许可优化
许可优化
产品
产品
解决方案
解决方案
服务支持
服务支持
关于
关于
软件库
当前位置:服务支持 >  软件文章 >  Matlab 2015b调用C代码:mex -setup报错“No supported compiler or SDK”解决方法

Matlab 2015b调用C代码:mex -setup报错“No supported compiler or SDK”解决方法

阅读数 6
点赞 0
article_banner

问题:找不到MinGW-w64编译器

出现原因:MATLAB与编译器安装的顺序不对,如果先安装的matlab,后安装的编译器,便容易出现这种错误。

参考链接:https://ww2.mathworks.cn/matlabcentral/fileexchange/52848-matlab-support-for-mingw-w64-c-c-compiler

解决方案:

1.下载MinGW GCC 4.9.2

链接:https://pan.baidu.com/s/1jHB3k8rHrpuvdMUTphC8cw

   提取码:en77

原链接:https://zh.osdn.net/projects/sfnet_tdm-gcc/downloads/TDM-GCC%20Installer/Previous/1.1309.0/tdm64-gcc-4.9.2-3.exe/



   2.安装注意事项

参考链接:https://ww2.mathworks.cn/help/matlab/matlab_external/install-mingw-support-package.html

3.设置环境变量

临时设置:

MATLAB在命令窗口输入>> setenv('MW_MINGW64_LOC','E:\mingw-64\mingw32')

长期生效:

  1. 点击计算机>选择系统属性 >高级系统设置>高级选项卡
  2. 单击环境变量>系统变量>选择新建.
  3. 在新建系统变量中,输入MW_MINGW64_LOC 变量名称。路径为 E:\mingw-64\mingw32

4.验证环境

matlab命令窗口输入>> mex -setup

选择C++或者C编译都可以

5.调用C代码

参考文章:https://blog.csdn.net/wislon/article/details/78777298

1) 语法:

函数的形式必须是
void mexFunction(int nlhs, mxArray *plhs[], int nrhs, const mxArray *prhs[])

   nlhs:输出参数个数

   plhs:输出参数列表

   nrhs:输入参数个数

   prhs:输入参数列表

   ,不过函数名可以随便取的。注意:保存的文件名就是将来在MATLAB中调用的函数名,而不是这里的函数名。

2)写一个add.c文件

#include "mex.h"

   //author zhuwl

   //test matlab use C function



   void mexFunction(int nlhs, mxArray *plhs[], int nrhs, const mxArray *prhs[])

   {

       mexPrintf("OK!/n");

   }

3) 把add.c拷贝到%matlab安装根目录%MATLAB\R2015b\bin

4) 调用效果:


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


相关文章
技术文档
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
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

姓名不为空

姓名不为空
手机不正确

手机不正确

手机不正确
公司不为空

公司不为空

公司不为空