如果.c文件不依赖于任何第三方库,那么mex编译很简单,只需要在matlab的命令行输入
mex test.c 即可。
但是如果这个c文件使用了第三方库文件,如opencv、gsl等等,那么就需要更改一下mex的编译选项,否则会报fetal error C1083,找不到包括文件。
这里需要注意的是,在mex之前,需要使用 mex -setup 选择编译器,假如我选的是VS2012,那么我需要把相应的选项加到VS2012所对应的opt文件中,具体的位置在
‘MATLAB路径\R2013a\bin\win64\mexopts’下面,
VS2012 对应的文件就是 msvc110opts.bat.
打开这个文件后,找到set INCLUDE= 和 set LIB= 两行,把所用到的库的inclue路径和lib路径分别添加到这两行后面就可以。
保存后,需要重新使用mex -setup选择编译器,使改动生效。
关于依赖库位置的设置方法,也许还有更好的方法, 继续探索中。。