Matlab 、C++代码混合编译

1、平台

OS:Windows10

matlab为2014a版本,通过在matlab命令行输入mex编译命令:mex -setup 查看到当前mex编译器是否就绪,如果本机同时已经安装了VS studio2013以及之前版本,则此时会有提示指定C++编译器,直接选择即可。

如果mex -setup命令的结果是没有C++编译器,则有可能是未安装,或者是matlab版本跟VS studio版本不匹配,可以查看mex提示的文档,找到当前matlab相匹配的C++编译器,安装之后再尝试mex -setup命令

2、编译

当通过mex命令指定好了C++编译器之后,则可在matlab中编译写好的XX.cpp文件,这里不讨论cpp具体代码编写规范,如有需求请另找教程;

首先将matlab当前工作目录定位到cpp文件所在目录,跟cmd命令一样,直接使用cd 目录名,即可。

然后使用mex命令进行编译,如果是单个cpp文件,直接 mex xx.cpp,如果是多个文件,比如A.cpp文件中还引用了B.cpp中的代码,甚至B还引用了C.cpp中的代码,那么mex命令后面需要跟多个cpp文件名,此时需要注意,生成的mexw64或者mexw32库文件名称是以mex命令之后跟的第一个cpp文件的名字确定的,所以,在使用mex命令编译多个cpp文件的时候,应该把主要的cpp文件放在最前面,如mex A.cpp B.cpp C.cpp,即可生成名为A.mexw32或者A.mexw64的库文件以供matlab调用。

这里的mexw32和mexw64中,mex之后的w指的是windows系统,32和64指的是32位还是64位编译器。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值