MATLAB生成COM组件未找到编译器解决方案
在使用MATLAB与其他语言混合编程时,想利用MATLAB生成COM组件供其他语言直接调用,却遇到找不到编译器导致生成失败。在网上找了好多解决方案均失败,最终解决,特此记录分享一下,以供有类似问题朋友解决。
最初问题界面如下:
在按提示下载了MinGW-w64 GCC编译器,配置环境后,也显示安装成功,在MATLAB里也能调用,如图
但生成COM组件仍失败。
解决方案:
经多次试错,有以下2方案,很简单:
1、MATLAB与编译器的安装顺序有很大的关系,若后安装编译器,虽然能调用,会导致MATLAB生成COM时找不到编译器的注册表文件。也可修改系统安装里的头文件解决,详情自找,思路为更新MATLLAB bin\win64下mexopts文件。
2、此处直接建议装Visual Studio,MATLAB调用方便,按官方提示装GCC容易出问题。本人用的MATLAB2018和VS2017。
最终打包成功如下: