使用mex指令matlab提示错误,Matlab2019a/b使用MEX命令将Visual Studio 2019设置为编译器...

检查MATLAB报错

首先在MATLAB中使用如下命令

mex -setup -v

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

d72b6d6b18cbcd68fec0353f15dcd903.png我这里显示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右键进行修改,或者点击安装程序,进入安装选择页面。

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

75b3fdcf7a860f7fc5fd449415cd5fa6.png

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

重试MATLAB命令行安装

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

mex -setup c

mex -setup cpp

补充几点

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

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

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

总结

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

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值