《Matlab实践》专栏·第1篇
文 | Researcher
560字 |2分钟阅读
一篇论文的代码用到了Matlab和C的混合编程。我在用mex对c程序编译的时候报错了。
问题描述:
代码语言:javascript复制mex -setup
错误使用 mex
未找到支持的编译器或 SDK。您可以安装免费提供的 MinGW-w64 C/C 编译器
解决方案:
第一步:安装MinGW-w64。打开Matalab,找到主页-附加功能,点击进入,搜索MinGW-w64。如下图所示:
我已经安装好了。若是第一次安装,需要你输入账号和密码,若是没有,可以直接注册一个,非常简单。
第二步:重新测试mex
代码语言:javascript复制mex -setup
第三步:进入到c程序的位置下,对c程序编译即可。
因为我是Win10系统,在编译c程序的时候,这个代码报了一个错误。
错误描述:
代码语言:javascript复制error: unknown type name 'int64_t'
解决方案:
在c程序的添加,添加如下语句
代码语言:javascript复制#include <stdint.h>
第四步:重新编译,编译成功后会在当前文件夹生成一个mexw64文件
第五步:直接在脚本文件或者命令行调用即可
参考资料:
1 https://zhuanlan.zhihu.com/p/148539143
2 https://blog.csdn.net/qq_32811489/article/details/89684187