How do I persuade MEX to link to a static library?
Mostrar comentarios más antiguos
I am trying to compile a C++ file that calls some functions in a static library (.lib). I am using:
mex cfile.cpp -llibname
I get an error "LNK2019: unresolved external symbol function_name referenced in function mexFunction" for each function I call from the library, exactly as if I'd not passed mex the library file.
The .lib file links fine outside of MATLAB, e.g. when compiling an exe using cl. How do I make mex recognise the library file?
Respuesta aceptada
Más respuestas (1)
Adam
el 24 de Jun. de 2015
I use the
-Llibfolder
option too when I compile my mex file against a static library. It sounds as though it just isn't finding the static library. As far as I can remember the library must be in the folder in which you call the mex function if you do not specify a path.
I have a function that wraps up the mex compilation code for mine and the library being linked against is in a different folder to that function so the -L option locates it.
1 comentario
Paul Bays
el 24 de Jun. de 2015
Categorías
Más información sobre Write C Functions Callable from MATLAB (MEX Files) en Centro de ayuda y File Exchange.
Productos
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!