c++ 编译添加dll_Matlab代码转C并编译dll(32位)

8a80025a9508016a14834e396c307a94.png

之前提到Matlab代码可以转为C代码,并编译为dll。

了凡春秋:Matlab代码转C并编译为dll​zhuanlan.zhihu.com
b66c6e228dcb70f743163c07c00d589f.png

默认情况下生成的dll为64位,如果要编译32位dll,就需要做额外配置。32位程序有个好处,即32位、64位系统都能跑,对于平时开发没啥用,但对于工程部署会带来方便,对用户操作系统位数没有要求,即装即用。

Matlab要生成32位dll,核心就是要配置编译工具链。Matlab有示例介绍,这里做个使用总结。

环境

Win10x64,Matlab2019b,VS2015

准备

需要两个文件:my_msvc_32bit_tc.mmyRtwTargetInfo.txt。前者可以在%matlabroot%examplescodermain路径下找到,后者的内容如下

function

将这两个文件放到一个目录下。

注册工具链

首先,得到自己MSVC的版本号,比如VS2015就是14.0。下面代码可以自动检测

installed_compilers 

结果

>> VersionNumbers
VersionNumbers =
  1×1 cell 数组
    {'14.0'}

然后,利用VersionNumbers注册工具链

%% 注册工具链

这样就注册好了。

编译32位dll

如下配置、编译,就得到32位dll:

%% 生成Dll

同样道理,要编写32位测试程序,配置如下

%% 生成测试Exe看dll是否能准确运行

注销工具链

如果32位工具链不想用了,可以注销:

%% 可选: 注销工具链

结果图

20c4a9d2e9aed1514e509b56d18fe293.png
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值