Matlab和C语言混合编程,包含目录的设定

如果.c文件不依赖于任何第三方库,那么mex编译很简单,只需要在matlab的命令行输入 

mex test.c 即可。

但是如果这个c文件使用了第三方库文件,如opencv、gsl等等,那么就需要更改一下mex的编译选项,否则会报fetal error C1083,找不到包括文件。

这里需要注意的是,在mex之前,需要使用 mex -setup 选择编译器,假如我选的是VS2012,那么我需要把相应的选项加到VS2012所对应的opt文件中,具体的位置在

‘MATLAB路径R2013ainwin64mexopts’下面,

VS2012 对应的文件就是 msvc110opts.bat.

打开这个文件后,找到set INCLUDE= 和 set LIB= 两行,把所用到的库的inclue路径和lib路径分别添加到这两行后面就可以。

保存后,需要重新使用mex -setup选择编译器,使改动生效。

关于依赖库位置的设置方法,也许还有更好的方法, 继续探索中。。

原文地址:https://www.cnblogs.com/zhsuiy/p/4792279.html