MATLAB转C代码,并生成32位dll
之前的blog中介绍了如何利用MATLAB Coder生成C\C++代码或dll,但dll默认是64位的。实际的使用过程中,我们可能需要32位的,更加方便部署。看似非常简单的转个位数,坑却非常多,下面做一个记录。
1. 安装MATLAB和Visual Studio,并适配版本
具体参考下方两个链接:
链接: link1.
链接: link2.
直到MATLAB执行“mex -setup”可以识别到你安装的VC++编译器,这部分就成功了。这里很关键,我一开始使用的都是最新版的2022版本VS和MATLAB,挣扎了很久还是识别不到,最后全部卸载了重装MATLAB2019a,VS2017,一次就成功了。
2. 生成32位dll文件
具体参考下方链接:
链接: link3.
按照文中的步骤,可以直接生成需要的文件,生成的文件结构和MATLAB Coder是一致的。
3. 关于步骤中接口输入参数是可变大小的数组
具体参考下方链接:
链接: link4.
可变大小的数组可以按照上面的方法用:coder.typeof()来解决,这样生成的dll的输入和对应输出也是支持可变大小数组的。