matlab simulink写s-function函数时搭建c运行环境,提示错误使用mex,需要安装mingw64-w

今天一下午就在搞这个了,最终总算成功,结果如下
在这里插入图片描述
matlab中给的解决方案并不够特别清楚,我自己下载了mingw64-w的好几个版本都试了下,发现并不能用(我的电脑安装的64位的Matlab2017),最后是在csdn的库里面找到的TDM GCC4.9.2,安装好后配置环境,在matlab中输入代码,实现。以下是下载链接,5个积分一次,别的C友上传的,感谢了:
链接如下:tdm-gcc-4.9.2.exe

没有积分,怎么办?没关系,这里上传了一份我的压缩资源,链接在本文末尾,超链接名为matlab_c_mex.zip。特此声明,如果不缺积分还是支持一下上面的作者,白嫖一时爽,切勿养成习惯。

--------------------------------------------------------分割线 2019 年 11 月 8 号-----------------------------------------------------

最近在另一台电脑执行同样的操作,发现,竟然不可以?开玩笑嘛?
最后试了一次,总算成功! 总结原因如下:
安装好这个TDM-GCC后,可以去复制目录,但一定要记住,只要安装的大的文件目录,比如,我安装在了D盘,那我要找的是D:\TDM-GCC-64,这个就可以了,千万不要带着\bin ,这就是问题的源头。
--------------------------------------------------------分割线 2021 年 1 月 ----------------------------------------------------
把这两行命令放在一个m文件中,在需要进行c语言编译时,就运行一下。(不管是写s-function 还是m文件编译成exe 文件)

%运行mingw64 的C编译环境
setenv('MW_MINGW64_LOC','D:\TDM-GCC-64')
mex -setup

感悟:细节真的很重要!一件事没有完成的时候,不要灰心,静下来,仔细看看自己是不是哪个环节疏漏了,是人都会犯错,难能可贵的是,出现问题的时候要保持冷静的心态,认真思考和分析。
编辑:Eric_anxuanxuan 有什么问题欢迎私信

文末链接:matlab_c_mex.zip

猜你喜欢

转载自blog.csdn.net/ericanxuanxuan/article/details/98655901
今日推荐