许可优化
许可优化
产品
产品
解决方案
解决方案
服务支持
服务支持
关于
关于
软件库
当前位置:服务支持 >  软件文章 >  完美解决Matlab mex错误:未找到支持的编译器或SDK

完美解决Matlab mex错误:未找到支持的编译器或SDK

阅读数 3
点赞 0
article_banner

1.需求和遇到的问题

需要在matlab中使用或者调用opencv函数,在网上找了一大圈,大致由两种 解决 方法:

  1. 编译mexw64文件:将c或者c++的程序按照符合matlab接口的规则进行编写,然后用mex进行编译。这种方法对于需要引用库的函数也适用,但是看上去挺复杂的。
  2. 编译mexopencv: 编译matlab版本的opencv即可在matlab中调用opencv的函数了。

但是这两种方法的前提都是能够正常启用“ mex -setup”。

 mex -setup

于是本人遇到了这个问题:

错误使用 mex 未找到支持的编译器或 SDK。您可以安装免费提供的 MinGW-w64 C/C++ 编译器;请参阅安装 MinGW-w64 编译器。有关更多选项,请访问http://www.mathworks.com/support/compilers/R2016a/win64.html。

关于这个问题,网上也有很多解决方案。但是如果自己电脑上已经有编译器了(比如装了vs2017),不建议重新装编译器,更不建议将matlab卸载了重新安装。
因为有更简单且治标又治本的方法

2. 问题解决方法

打开matlab安装路径下的mexopts 文件夹  

F:\matlab2016\bin\win64\mexopts

里面有各种需要各种编译器的配置文件
在这里插入图片描述

   找到自己编译器的相应版本!如果没有自己编译器的版本,可以去网上找了 下载  到这个目录下。网上找到一个大佬分享的vs2017的配置文件,链接.

   在matlab命令窗口输入命令:

mex -setup -v

在这里插入图片描述

   查看这个输出里面的SDK版本号自己电脑里面的是否一致,不一致的话进入.xml配置文件中改为自己电脑里面的SDK版本。
在这里插入图片描述

   因为按照编译器的时候注册表里面就会有记录,所以一般不需要在注册表里面做任何更改!

   这样下来就可以使用mex了。

参考

[1]解决MATLAB对VS高版本出现“错误使用 mex未找到支持的编译器或 SDK。”的问题.


免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删

相关文章
技术文档
QR Code
微信扫一扫,欢迎咨询~
customer

online

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 board-phone 155-2731-8020
close1
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

姓名不为空

姓名不为空
手机不正确

手机不正确

手机不正确
公司不为空

公司不为空

公司不为空