Executing a rountin in mexw32 binary compiled with Visual Studio 2010

2 visualizaciones (últimos 30 días)
Hello,
I built a mexw32 binary with Visual Studio 2010 by the build instruction in the Help. The build was successful but using the function was not.
The mexw32 file is put in a directory and I tried to call the function in that directory but Matlab cannot see the function.
I wonder if there is some other things that are not fully explained int the help. Help will be greatly appreciated. Thanks.
Seongjoo

Respuesta aceptada

Seongjoo Lee
Seongjoo Lee el 5 de Mzo. de 2011
I figured out what the problem was:
When building a mexw32 with IDE (Visual Studio), Module Definition file (.def) is required. When I wrote the def file, I named the library as 'myfunction'
LIBRARY myfunction
EXPORTS mexFunction
However, the mexw32 file name was not 'myfunction'. After I named the mexw32 file same as the name specified in def file, I can correctly evoke the function in Matlab.
The reason why I wanted to use Visual Studio for building mexw32 is that I can deal with a single interface to build the binary. Of course, mex -O -c code.cpp is not too difficult, but managing projects having dependencies to multiple libraries is quickly becoming a complex task. For that task, Visual Studio is a good tool.
Thanks for participating for the issue!

Más respuestas (1)

Walter Roberson
Walter Roberson el 4 de Mzo. de 2011
How are you trying to invoke the function? Is the directory of the function your current directory, or is it on your path? Did you rehash your path after you created the .mex32 ?
  3 comentarios
Jan
Jan el 4 de Mzo. de 2011
Please post more details. What do you mean with "routine inside of the file"?
Seongjoo Lee
Seongjoo Lee el 5 de Mzo. de 2011
I just meant a function wrapped in mexFunction :)

Iniciar sesión para comentar.

Categorías

Más información sobre MATLAB Compiler en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by