前言
低版本的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++的编译器时,其他版本步骤一样,只需要更改配置文件和数值名称即可。
武汉格发信息技术有限公司,格发许可优化管理系统可以帮你评估贵公司软件许可的真实需求,再低成本合规性管理软件许可,帮助贵司提高软件投资回报率,为软件采购、使用提供科学决策依据。支持的软件有: CAD,CAE,PDM,PLM,Catia,Ugnx, AutoCAD, Pro/E, Solidworks ,Hyperworks, Protel,CAXA,OpenWorks LandMark,MATLAB,Enovia,Winchill,TeamCenter,MathCAD,Ansys, Abaqus,ls-dyna, Fluent, MSC,Bentley,License,UG,ug,catia,Dassault Systèmes,AutoDesk,Altair,autocad,PTC,SolidWorks,Ansys,Siemens PLM Software,Paradigm,Mathworks,Borland,AVEVA,ESRI,hP,Solibri,Progman,Leica,Cadence,IBM,SIMULIA,Citrix,Sybase,Schlumberger,MSC Products...