报错
mex -setup -v
详细模式已开。
... 正在查找编译器 'Intel C++ Composer XE 2013 with Microsoft SDK 7.1 (C)'...
... 正在查找环境变量 'ICPP_COMPILER14'...否。
... 正在查找环境变量 'ICPP_COMPILER13'...否。
找不到已安装的编译器 'Intel C++ Composer XE 2013 with Microsoft SDK 7.1 (C)'
错误使用 mex
C:/TDM-GCC-64/bin/../lib/gcc/x86_64-w64-mingw32/9.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe:
C:\Users\VI~1.TAN\AppData\Local\Temp\mex_278893593822679_13932\main.obj: in function `mexFunction':
关键是这些问题都不是由于代码导致的,修改代码无法解决上面的错误;
使用 mex -setup C++没有问题,但是编译仍然会有问题
使用命令mex -setup -v报错
查看注册列表,确实对应的路径不存在
到matlab的安装路径下\bin\win64\mexopts中查看当前matlab版本支持哪些版本,发现不支持2019,在微软官网下对应的xml,VS2019支持配置文件,重新更新vs
>> mex -setup -v
详细模式已开。
... 正在查找编译器 'Intel C++ Composer XE 2013 with Microsoft SDK 7.1 (C)'...
... 正在查找环境变量 'ICPP_COMPILER14'...否。
... 正在查找环境变量 'ICPP_COMPILER13'...否。
找不到已安装的编译器 'Intel C++ Composer XE 2013 with Microsoft SDK 7.1 (C)'。
... 正在查找编译器 'Intel C++ Composer XE 2013 with Microsoft Visual Studio 2012 (C)'...
... 正在查找环境变量 'ICPP_COMPILER14'...否。
... 正在查找环境变量 'ICPP_COMPILER13'...否。
找不到已安装的编译器 'Intel C++ Composer XE 2013 with Microsoft Visual Studio 2012 (C)'。
... 正在查找编译器 'Intel C++ Composer XE 2013 with Microsoft Visual Studio 2013 (C)'...
... 正在查找环境变量 'ICPP_COMPILER14'...否。
... 正在查找环境变量 'ICPP_COMPILER13'...否。
找不到已安装的编译器 'Intel C++ Composer XE 2013 with Microsoft Visual Studio 2013 (C)'。
... 正在查找编译器 'Intel Parallel Studio XE 2015 with Microsoft SDK 7.1 (C)'...
... 正在查找环境变量 'ICPP_COMPILER15'...否。
找不到已安装的编译器 'Intel Parallel Studio XE 2015 with Microsoft SDK 7.1 (C)'。
... 正在查找编译器 'Intel Parallel Studio XE 2015 with Microsoft Visual Studio 2012 (C)'...
... 正在查找环境变量 'ICPP_COMPILER15'...否。
找不到已安装的编译器 'Intel Parallel Studio XE 2015 with Microsoft Visual Studio 2012 (C)'。
... 正在查找编译器 'Intel Parallel Studio XE 2015 with Microsoft Visual Studio 2013 (C)'...
... 正在查找环境变量 'ICPP_COMPILER15'...否。
找不到已安装的编译器 'Intel Parallel Studio XE 2015 with Microsoft Visual Studio 2013 (C)'。
... 正在查找编译器 'Intel Parallel Studio XE 2015 with Microsoft Visual Studio 2015 (C)'...
... 正在查找环境变量 'ICPP_COMPILER15'...否。
找不到已安装的编译器 'Intel Parallel Studio XE 2015 with Microsoft Visual Studio 2015 (C)'。
... 正在查找编译器 'Intel Parallel Studio XE 2016 with Microsoft SDK 7.1 (C)'...
... 正在查找环境变量 'ICPP_COMPILER16'...否。
找不到已安装的编译器 'Intel Parallel Studio XE 2016 with Microsoft SDK 7.1 (C)'。
... 正在查找编译器 'Intel Parallel Studio XE 2016 with Microsoft Visual Studio 2012 (C)'...
... 正在查找环境变量 'ICPP_COMPILER16'...否。
找不到已安装的编译器 'Intel Parallel Studio XE 2016 with Microsoft Visual Studio 2012 (C)'。
... 正在查找编译器 'Intel Parallel Studio XE 2016 with Microsoft Visual Studio 2013 (C)'...
... 正在查找环境变量 'ICPP_COMPILER16'...否。
找不到已安装的编译器 'Intel Parallel Studio XE 2016 with Microsoft Visual Studio 2013 (C)'。
... 正在查找编译器 'Intel Parallel Studio XE 2016 with Microsoft Visual Studio 2015 (C)'...
... 正在查找环境变量 'ICPP_COMPILER16'...否。
找不到已安装的编译器 'Intel Parallel Studio XE 2016 with Microsoft Visual Studio 2015 (C)'。
... 正在查找编译器 'MinGW64 Compiler (C)'...
... 正在查找环境变量 'MW_MINGW64_LOC'...是('C:\TDM-GCC-64')。
... 正在查找文件 'C:\TDM-GCC-64\bin\gcc.exe'...是。
... 正在查找文件夹 'C:\TDM-GCC-64'...是。
找到已安装的编译器 'MinGW64 Compiler (C)'。
... 正在查找编译器 'Microsoft Visual C++ 2012 (C)'...
... 正在查找注册表设置 'HKLM\SOFTWARE\Microsoft\VisualStudio\SxS\VS7' 11.0...否。
... 正在查找注册表设置 'HKCU\SOFTWARE\Microsoft\VisualStudio\SxS\VS7' 11.0...否。
... 正在查找注册表设置 'HKLM\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\SxS\VS7' 11.0...否。
... 正在查找注册表设置 'HKCU\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\SxS\VS7' 11.0...否。
找不到已安装的编译器 'Microsoft Visual C++ 2012 (C)'。
... 正在查找编译器 'Microsoft Visual C++ 2013 Professional (C)'...
... 正在查找注册表设置 'HKLM\SOFTWARE\Microsoft\VisualStudio\SxS\VS7' 12.0...否。
... 正在查找注册表设置 'HKCU\SOFTWARE\Microsoft\VisualStudio\SxS\VS7' 12.0...否。
... 正在查找注册表设置 'HKLM\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\SxS\VS7' 12.0...否。
... 正在查找注册表设置 'HKCU\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\SxS\VS7' 12.0...否。
找不到已安装的编译器 'Microsoft Visual C++ 2013 Professional (C)'。
... 正在查找编译器 'Microsoft Visual C++ 2015 Professional (C)'...
... 正在查找注册表设置 'HKLM\SOFTWARE\Microsoft\VisualStudio\SxS\VS7' 14.0...否。
... 正在查找注册表设置 'HKCU\SOFTWARE\Microsoft\VisualStudio\SxS\VS7' 14.0...否。
... 正在查找注册表设置 'HKLM\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\SxS\VS7' 14.0...否。
... 正在查找注册表设置 'HKCU\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\SxS\VS7' 14.0...否。
找不到已安装的编译器 'Microsoft Visual C++ 2015 Professional (C)'。
... 正在查找编译器 'Microsoft Visual C++ 2019 (C)'...
... 正在查找注册表设置 'HKLM\SOFTWARE\Microsoft\VisualStudio\SxS\VS7' 16.0...否。
... 正在查找注册表设置 'HKCU\SOFTWARE\Microsoft\VisualStudio\SxS\VS7' 16.0...否。
... 正在查找注册表设置 'HKLM\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\SxS\VS7' 16.0...否。
... 正在查找注册表设置 'HKCU\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\SxS\VS7' 16.0...否。
找不到已安装的编译器 'Microsoft Visual C++ 2019 (C)'。
... 正在查找编译器 'Microsoft Windows SDK 7.1 (C)'...
... 正在查找注册表设置 'HKLM\SOFTWARE\Microsoft\Microsoft SDKs\Windows\v7.1' InstallationFolder...否。
... 正在查找注册表设置 'HKLM\SOFTWARE\Wow6432Node\Microsoft\Microsoft SDKs\Windows\v7.1' InstallationFolder...否。
找不到已安装的编译器 'Microsoft Windows SDK 7.1 (C)'。
... 正在查找编译器 'MinGW64 Compiler (C)'...
... 正在查找环境变量 'MW_MINGW64_LOC'...是('C:\TDM-GCC-64')。
... 正在查找文件 'C:\TDM-GCC-64\bin\gcc.exe'...是。
... 正在查找文件夹 'C:\TDM-GCC-64'...是。
找到已安装的编译器 'MinGW64 Compiler (C)'。
MEX 配置为使用 'MinGW64 Compiler (C)' 以进行 C 语言编译。
更新后重启,再次查看注册表中是否存在。
注册表已存在
修改注册表
选择编译环境
可以成功编译啦