Using a shared .dll library while making an executable
1 view (last 30 days)
Show older comments
So i know in order to use the 'loadlibrary' function you need a c compiler. But what if i turn the matlab code calling the 'loadlibrary' function into an executable program and that program is used on a computer without a c compiler?
I am using 3 functions from a .dll library, but do not actually have the .c code, otherwise i could just make a mex function using the .c files.
Is it possible to compile a mex64 function with only the .dll library file, and the header file? If not is it possible to write a mex function that uses those files? I want to make the program as versitile as possible, but it needs to be called in matlab.
If anyone has any ideas on what a good way to approach this problem, or general info i would be very thankful.
0 Comments
Accepted Answer
Walter Roberson
on 15 Jun 2013
loadlibrary(libname,@protofile)
You can see how to generate the prototype file at http://www.mathworks.com/help/matlab/matlab_external/create-alias-function-name-using-prototype-file.html
That is, in a setup run on the development machine you would use the .h to generate the protofile; then the code you would compile would use the @protofile syntax on the already-generated file.
More Answers (0)
See Also
Categories
Find more on MATLAB Compiler in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!