Hi,
I have a custom low level TDM Analyzer, which I can use on my PC very well on my Windows 10 PC.
But, if I try to load the same DLL on another Windows 10 PC, I get the below error
This Analyzer works on my PC in Logic 1 SW also. But on another PC, it doesn’t work in Logic 1 too.
Popup doesn’t give much information on what is wrong with the DLL. I tried looking it up in the discuss forum. But I see, no one has encountered such an issue on Windows specifically. Please help !!
@rohit.walavalkar Sorry to hear about this issue! Apologies for my delay in reply by the way. A few of us have been out of office during this week. We’re catching up on things right now, and we’re sorry to hear about the loading issue you are seeing.
I suspect I know what’s causing it. In short, you are likely attempting to load a “debug” version of the .dll, instead of a “release” version.
Your TDM analyzer will need to be built by using the instructions in the readme below as an example:
I hope that helps!
@timreyes I am sorry for posting such a trivial issue here.
I was loading Debug version of DLL all along. I also found out that on the second machine this DLL works if I install Visual Studio(along with C/C++ compiler)
I will try with Release version on a third machine.
Thanks for the help.
1 Like
@timreyes Release version of the DLL indeed works. Thanks.
1 Like
Hello,
I made a few custom low level analyzers and when I distributed the .DLLs, they received the same error.
I tried
cmake .. -A x64
cmake --build .
In build\Analyzers I only see the debug folder and not a release. Is there an argument that I need to pass? Not very familiar with cmake.
I am unable to install visual studio on the other computers to make the debug work.
Try adding --config Release
to the cmake build command, as per this StackOverflow post:
cmake --build . --config Release
It might be nice for Saleae to include this in the SampleAnalyzer readme.md file (at least for Windows builds)?
Note: For other target OSs, I think you can use the -DCMAKE_BUILD_TYPE=Release
option during the first step, but the article above indicates that MS Visual Studio doesn’t play nice with that method.
I’ll let someone more familiar with cmake nuances chime in with any ‘best practice’ way to do it across all platforms, but hopefully the above method will at least work for you on Windows.
I second this!
Thank you BitBob, it works on the coworkers computer. Appreciate it!
Good idea, I’ve added it here:
Also, if you haven’t already, you should check out how to use github.com to build your analyzer for you, for all 3 platforms.
Basic details here:
Essentially, if you forked the SampleAnalyzer repository, or if you simply copied it into a new github repository, all you have to do is create a tag to automatically cause the pre-configured github action to build for all 3 platforms and create a github release. I suggest naming the tag something like “1.0.0”.
That creates releases like the ones you see here:
Thank you Mark for updating! Very cool, I will check that out. I am not sure if my company will let me use github but rather only their bitbucket repository, but I will ask.
-ryan