Part_1 VS C++、matlab混编
现在你有一个编写好的.m文件,要把它编成lib供vs调用。
1、matlab窗口中输入 mex -setup
2、matlab窗口输入 mbuild -setup
并选择对应的VS版本(试过vs版本高于matlab版本找不到编译器),以上步骤只需要进行一次
3、每次要生成新的.m文件时,在matlab窗口输入deploytool
4、左上角选择C++ shared lib ,并导入要生成的文件
5、打包方式随便(因为是lib,还没看到两种打包方式的区别),package即可
6、在生成的目录中找到同名的 .h .dll .lib 按照一般的使用方式添加到vs工程里即可
Part_2 在没有MATLAB的机器上使用lib
1、在官网上下载MCR环境,版本和用来生成lib的matlab版本一致;安装。
2、在vs上配置属性;
include 目录 ...(MCR安装位置)\版本(比如v90)\extern\include
lib 目录 ---(MCR安装位置)\版本\extern\lib\win64\microsoft
以及需要的附加依赖项 如libmat.lib
3、配置系统环境变量
在path里面添加MCR中含有dll文件的目录:---(安装位置)\版本\runtime\win64
如果提示某个dll文件缺失,就在这个安装文件夹里查找到他的目录,把目录添加到系统变量里。
然后“重启”,让系统变量生效。
就可以像有matlab环境下一样使用了。