前言
低版本的MATLAB在使用mex配置高版本Visual Studio作为C/C++的编译器时,会报找不到编译器的错误。比如MATLAB2018b在使用Visual Studio2019做编译器的时候,会出现上述问题,原因是2018年发布的MATLAB肯定不会有2019年Visual Studio2019的配置文件。下面以MATLA2018b配置Visual Studio2019为例给出具体解决办法
1.下载支持Visual Studio2019的配置文件
链接:https://pan.baidu.com/s/11PbLoiu6s5cN_zlQzRpYsA 提取码:9h5i (复制这段内容后打开百度网盘手机App,操作更方便)
文件内容:
配置文件
2.将Visual Studio2019的配置文件复制粘贴到MATLAB相应路径
复制两个文件到MATLAB的安装路径下,文件夹mexopts中
我的是 D:\matlab_install\bin\win64\mexopts (每个人会有不同,将msvc2019和msvcpp2019放到文件夹mexopts中就行)
如果不记得安装在哪,可以找到MATLAB图标,单机鼠标右键,选择打开文件所在位置,找到bin文件夹,最终定位到mexopts文件夹。
mexopts文件夹
3.确定注册表添加路径和数值名称
首先打开MATLAB,在命令行中输入
按回车执行,出现
路径和值
其中的路径就是MTALB查找VS的位置,我们只需要选择一条,添加上即可。 我们选择第一个 HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\VisualStudio\SxS\VS7 数值名称为16.0
4.完成添加
首先,win + r, 输入regedit,确定打开
注册表编辑器
按照路径依次打开: HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\VisualStudio\SxS\VS7
如果没有找到SxS\VS7,就在VisualStudio下依次新建项即可
注册表
右单击空白处,新建,字符串值 数值名称16.0 数值数据为VS的安装路径 如果不记得安装在哪,可以找到VS图标,单机鼠标右键,选择打开文件所在位置 (我的是企业版)
字符串值
4.验证是否成功
首先打开MATLAB,在命令行中输入
按回车执行,配置成功
配置验证
总结
低版本的MATLAB在使用mex配置高版本Visual Studio作为C/C++的编译器时,其他版本步骤一样,只需要更改配置文件和数值名称即可。