matlab mbuild -setup找不到C++编译器解决方案

matlab mbuild -setup找不到C++编译器解决方案

本文配置环境:matlab2016b+vs2013
问题:想将.m文件打包成com组件供vb.net调用,但却遇到“找不到C++编译器”的问题

我尝试了网上能找到的各种方法均不成功!最后我总结出以下方法:
首先确保你的matlab和vs都是正确安装的,并且matlab的版本与vs互相兼容(不兼容的情况是自己下载matlab安装目录下mexopts文件夹内容,这种情况其他博主已有文章详解,这里不再赘述)。然后可以用以下两种方法“看到”matlab搜索C++编译器的过程:
一、在matlab 命令窗口输入deploytool
出现compiler对话框,选择第三个进入“MATLAB Compiler”对话框
在这里插入图片描述
在这里插入图片描述
选择“Generic COM Component”方式,添加类和.m文件后,选择右上角Package打包
这时会出现打包失败(由于我已经解决问题所以就不放图了)的对话框,点击红字显示的
“打包失败,打开日志文件”,里面逐条显示搜索过程和路径。

二、在matlab 命令窗口输入mcc -v -W ‘com:my_add,myclass,1.0’ -T link:lib myadd.m
其中my_add是要生成的COM组件名,myclass是其类名,版本为1.0,myadd是其方法(也就是添加的.m文件)
然后运行,会在命令窗口显示搜索过程并最终结果是未找到任何已安装的C++编译器。
在这里插入图片描述
可以看到matlab自动开始搜索计算机上已安装或者曾经安装没卸载干净的C++编译器,
从环境变量——注册表——文件夹——文件依次进行,我们可以逐个过程地检查自己的电脑设置和命令窗口显示的是否一致,如果不一致再做修改使得和命令窗口显示的一致。比如我的显示:
正在查找文件’C:\Program Files\Microsoft Visual Studio 12.0\VC\bin\amd64\cl.exe’,否
原因是我的这个文件在’C:\Program Files(x86)'文件夹下,于是我把VC文件夹拷贝到\Program Files(x86)文件夹下果然就成功了。

  • 4
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值