drm*_*elr 6 c++ matlab mex visual-studio
序言:我在写这篇文章的过程中找到了一个解决方案,这个问题是一个PITA并且有一个复杂的解决方案.因此,我觉得有必要离开这里帮助任何有这个问题的穷人.
我是MatLab的新手,我通常也不使用Visual C++,所以请原谅我,如果这应该是非常明显的.
简短版本:我的计算机上安装了Visual C++ 2013,但mex在运行时找不到它mex -setup c++
.我得到以下内容:
>>mex -setup cxx
使用mex时出错
未找到支持的编译器或SDK.您可以安装免费的MinGW-w64 C/C++编译器; 请参阅安装MinGW-w64编译器.有关更多选项,请 访问http://www.mathworks.com/support/compilers/R2015b/win64.html.
这是完整的情况.
我最初运行Visual Studio 2015,而mex发现编译器就好了.但是,我很快发现Simulink与VS 2015不兼容,所以我不得不回滚到VS 2013,这就是我的问题开始的时候.
我和其他许多人一起试过以下网站来寻找解决方案:
mex
用法.然后我走了一个兔子洞.
一个非常旷日持久的mathworks.com回答,提示其他链接.这导致我......
另一个mathworks.com回答听起来像我的问题,并建议修补我的设置.事实证明我没有安装SDK 7.1.所以,我去安装,并得到这个错误:
某些组件无法安装.某些Windows SDK组件需要RTM .NET Framework 4 ...
这个Stack Overflow问题询问了这个问题,我遇到了与DaniloGadêlha已经安装的.NET Framework 相同的问题.
我尝试了最佳答案,并删除了我能找到的任何版本的.NET框架的每一个引用,包括"Windows功能"下的那些,我仍然无法安装.
我尝试了下一个选项,即使在安全模式下,RegEdit也不会让我更改下一个答案建议的值,所以这是一个破产.
最后,我尝试了MandM的解决方案,最终解决了我的问题链.
我认为这是问题的根源:当我卸载 Visual Studio 2015 并安装 Visual Studio 2013 时,安装或注册表设置处于不正确的状态,因此 mex 无法找到 Visual Studio 2013。
\n\n对我有用的解决方案:
\n\n\n\n\n卸载以下内容:
\n\n\n
\n\n- “Microsoft Visual C++ 2010 x64 可再发行组件”
\n- “Microsoft Visual C++ 2010 x86 可再发行组件”
\n在安装 Windows 7.1 SDK 之前,安装包会在安装过程中重新安装这两个。
\n
饰演Robert Va\xc5\xbean在评论中指出的那样:
\n\n\n\n\n如果尽管采取了此解决方法,错误消息仍然存在,只需单击“确定”并继续安装。这次就安装成功了..
\n
我确实遇到了这个错误,但安装工作正常。