Matlab2019a/b使用MEX命令将Visual Studio 2019设置为编译器

检查MATLAB报错

首先在MATLAB中使用如下命令

mex -setup -v

根据显示出的问题来判断,如图

我这里显示VisualStudio2019已经正常安装,但是注意后面几行显示注册表(Registry setting)无法找到对应的注册值。

如果你的问题是VS2019都无法找到,那么就请先去微软官网下载最新的VS2019(https://visualstudio.microsoft.com/zh-hans/?rr=https%3A%2F%2Fwww.google.com%2F)

然后,回到注册表问题,打开windows自带的registry editor,我们会发现其实是因为,根据上面的路径根本找不到Microsoft SDK这个注册表项。

修改VS安装

那么无论你是否已经安装VS2019,都可以通过控制面板的programms and features下面找到VS2019右键进行修改,或者点击安装程序,进入安装选择页面。

这里很关键,进入安装选择页面后,进入上面的第二项,然后下滑找到如图所示的几个选项,勾上

Matlab2019a/b使用MEX命令将Visual Studio 2019设置为编译器_第1张图片

如此安装/修改之后,我们注册表就有了Microsoft SDK.

重试MATLAB命令行安装

那么在正确安装了VS2019的情况下(指的是所有应有选项都勾选,且第一次安装时立即重启电脑),重新打开MATLAB,输入如下命令即可把VS2019作为你的C或者C++的编辑器

mex -setup c
mex -setup cpp

 

补充几点

- 本方案只能针对安装最新版本matlab(2019及以上)和微软官方免费的Visual Studio 2019 community。

- 其他版本的安装涉及到不同的Visual Studio,是否也能通过勾选正确的选项来解决,目前不得而知。

- matlab和VS的安装顺序区分,手动修改环境,手动修改注册表等等,在笔者这里都认为是一些人根据有限的理解能力推导出的片面解决方案,没有任何代表性。

 

总结

遇到类似软件兼容安装问题,最好的办法就是,根据软件自身的报错和其官方配套说明来进行解决。

很多时候,他人在网上提供的解决方法并不能适用于所有情况。

你可能感兴趣的:(Matlab,C++,Compilation)