it编程 > 编程语言 > C/C++

matlab编译找不到C++编译器怎么办?mbuild-setup提示未检测到编译器解决方法

25人参与 2026-09-13 C/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)文件夹下果然就成功了。

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持代码网。

(0)

您想发表意见!!点此发布评论

推荐阅读

解决Matlab找不到编译器问题以及版本通用方法

09-13

C++ 如何把大顶堆改成小顶堆?priority_queue 与仿函数从原理到模拟实现

09-11

C++中使用大括号初始化时需要注意哪些问题?一文总结

09-13

MQ消息丢失怎么解决?5种方案帮你彻底搞定

09-13

ubuntu虚拟机安装QT找不到图标?打开方式实现教程

09-13

C语言字符数组和字符串的区别是什么?一文搞懂\0的作用

09-14

猜你喜欢

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论