Error while compiling C code containing mex.h and mexFunction

Hi,
I am trying to compile a C code that uses mex.h file, but I am getting following error. The command that i have used to compile C code is this
gcc test.c
Basically I have a C program with "mex.h" and I am trying to compile this file and the aim is to be able to use compiled file independent of the Matlab on the system.

3 Kommentare

Jan
Jan am 26 Jun. 2021
Bearbeitet: Jan am 26 Jun. 2021
The libraries are missing. How could gcc know, which librtaries your want to add? Is there a reason not to use the mex command from sinide Matlab? This will add the needed libraries automatically.
The reason I am using gcc is that I want to use the executable with Python language and want to be able to run the code even on machine which does not have matlab installed.
I also tried with this command but got following error.
gcc -fPIC -IC:\Progra~1\MATLAB\R2020b\extern\include -IC:\Progra~1\MATLAB\R2020b\extern\lib -lC:\Progra~1\MATLAB\R2020b\bin\win64\libmat.dll -lC:\Progra~1\MATLAB\R2020b\bin\win64\libmx.dll -shared -o whitsmw_Cd1.dll whitsmw_Cd1.c
Although the path for which I am getting error does exist along with the mentioned file. I am not sure if there are other ways to make C program (which uses mex.h) executable in such a way that the executable can be use on machines which don't have matlab installed.
All of those missing functions are contained in MATLAB libraries. You need to link with these libraries to resolve the function calls, and you need MATLAB installed to have those libraries available. If you don't have MATLAB installed, the alternative is to rewrite the C code so that it doesn't depend on those library functions.

Melden Sie sich an, um zu kommentieren.

Antworten (1)

Swatantra Mahato
Swatantra Mahato am 29 Jun. 2021
Bearbeitet: Swatantra Mahato am 29 Jun. 2021

0 Stimmen

Hi Rohan,
It is my understanding that you want to create a standalone application using mex functions. You can create the application using the MATLAB Compiler to compile a MATLAB function that calls your mex function
The documentation link below contains some tips on how to compile MATLAB functions containing mex files
Hope this helps

Kategorien

Mehr zu Write C Functions Callable from MATLAB (MEX Files) finden Sie in Hilfe-Center und File Exchange

Gefragt:

am 26 Jun. 2021

Bearbeitet:

am 29 Jun. 2021

Community Treasure Hunt

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

Start Hunting!

Translated by