- 确保您有管理权限。
- 从开始菜单中选择“计算机”。
- 从上下文菜单中选择“系统属性”。
- 单击“高级系统设置>高级”页签。
- 单击“环境变量”。
- 在“系统变量”下选择“新建”。
- 在“新建系统变量”对话框中,在“变量名”字段中输入MW_MINGW64_LOC。
- 在变量值字段中,输入MinGW-w64编译器安装的位置,例如,'C:\TDM-GCC-64'。
- 单击“确定”关闭对话框,然后关闭“控制面板”对话框。
我的电脑上已经有MinGW了。我如何配置它与MATLAB工作?
2.396次观看(过去30天)
显示旧的注释
我的电脑上已经有MinGW了。我如何配置它与MATLAB工作?
接受的答案
MathWorks支金宝app援小组
2022年9月1日
编辑:MathWorks支金宝app援小组
2022年9月7日
MATLAB通过读取环境变量MW_MINGW64_LOC来检测MinGW编译器。当您从MATLAB Add-Ons菜单安装MinGW时,MATLAB将设置此变量。以下说明可用于手动设置此环境变量。
注意:
请注意,如果之前安装了“MATLAB支持MinGW-w64 C/ c++编译器”支持包,那么为了使任何更改是永久性的,必须卸载它。金宝app
对于MATLAB R2017b及以上版本:
在执行这些步骤之前,请确认您已经安装了MinGW-w64 5.3版本(或R2018b及更高版本的MinGW-w64 6.3版本)。
1)下载附件MATLAB函数“configuremingw”。
2)确定包含MinGW编译器二进制文件的MinGW安装目录的完整路径。它被标识为MINGWROOT。
3)在MATLAB命令窗口中运行:
> > configuremingw (MINGWROOT)
另外,运行:
> > configuremingw
然后导航到MINGWROOT。
对于MATLAB R2015b到R2017a:
在执行这些步骤之前,请确认您已经安装了MinGW-w64 4.9.2版本。
MW_MINGW64_LOC环境变量可以(A)为整个系统级别设置,或(B)在每次打开MATLAB时临时设置。需要管理权限才能将MW_MINGW64_LOC设置为系统环境变量。临时设置环境变量不需要特殊权限。
(A)在Windows 7/8/10操作系统中将MW_MINGW64设置为系统环境变量:
(B)使用MATLAB将MW_MINGW64设置为临时环境变量:
在MATLAB命令窗口中执行如下命令:
> > setenv (“MW_MINGW64_LOC”文件夹)
其中“folder”是MinGW的安装目录。例如,'C:\TDM-GCC-64'。每次启动MATLAB时都需要运行此命令,以便MATLAB正确使用MinGW。您可以考虑将上述命令添加到您的“启动”中。m的文件。这将在MATLAB每次启动时执行该命令。
验证:
执行以上步骤后,您可以通过运行以下命令来验证编译器是否被MATLAB识别,并查看MATLAB检测到的MW_MINGW64_LOC环境变量被设置为什么:
>> mex -setup -v
注意:请注意,由于缓存限制,运行此命令后选择“MinGW64 Compiler”的选项可能会显示要运行的错误命令。实际上,单击此选项将使用MW_MINGW64_LOC环境变量所指向的MinGW版本。
更多答案(13)
马布里托
2021年10月8日
编辑:马布里托
2021年10月8日
为了让它正常工作,我卸载了旧的minGW 8.1.0版本,并安装了新版本9。
但不是以前的路径(Program Files),我只是把minGW文件夹放在我的C硬盘驱动器上,这样路径中就没有空格了!
之后,我以admin启动matlab并运行>> configuremingw命令并选择minGW文件夹(不是bin文件夹!)
现在一切都在使用最新的编译器版本的minGW!
@MathWorks支金宝app持团队
这应该添加到如何手动添加minGW编译器以使用最新版本的minGW编译器的文档部分。或者至少从Add-Ons部分更新minGW编译器!
0评论
年代克龙比式
2017年11月22日
我使用MATLAB 2017b,所以遵循第一组指令。在设置MINGWROOT = 'C:\mingw64'和运行configuremingw(MINGWROOT)后,我得到以下错误:未定义的变量“mex_spkg”或类“mex_spkg. getenvvarname”。
configuremingw出错
这些变量应该在哪里?我没有正确配置路径吗?谢谢你的建议。
racharla
2018年2月28日
编辑:MathWorks支金宝app援小组
2021年8月23日
我使用matlab2017a,我已经配置了环境变量,我在系统中的某个位置有MinGw,我已经在环境变量中给出了位置,但即使这样,我也会得到相同的错误,如“使用mex错误,未找到支持的编译器或SDK。金宝app你可以安装免费的MinGW-w64 C/ c++编译器;参见安装MinGW-w64编译器。更多选择,请访问:
//www.tatmou.com/金宝appsupport/requirements/supported-compilers.html
法布里斯
2018年6月25日
编辑:法布里斯
2018年6月25日
我也有VisualStudio 2017,但mex -setup不能找到/使用包含的编译器?有什么解决方案使Matla金宝搏官方网站b mex文件工作在这种配置?
西南
- Matlab 2014
- Windows 10 x64
- 安装了各种编译器(VS2017, MinGW…);如果需要,可以安装另一个吗
HW
- 英特尔酷睿i7
1评论
沃尔特·罗伯森
2018年6月25日
看到
//www.tatmou.com/content/dam/mathworks/mathworks-dot-com/金宝appsupport/sysreq/files/SystemRequirements-Release2014a_SupportedCompilers.pdf
获取可使用的编译器列表。注意,这里所说的专业版指的是专业版(或终极版),而不是社区版或快速版。
Jawhar切比
2019年9月5日
编辑:Jawhar切比
2019年9月5日
你好,这对我没用。我有Matlab 2017b,我以管理员身份运行它,当我用正确的路径执行configuremingw函数时,我得到以下错误
使用configuremingw时出错
由于没有授予管理员权限,无法安装MinGW编译器。
1评论
Afaf萨德
2018年9月23日
编辑:Afaf萨德
2018年9月23日
我下载了8版本并安装了,但是我无法连接到matlab,有什么帮助吗?
我得到这个错误:">> configuremingw错误使用configuremingw文件夹'C:\Program Files (x86)\ MinGW -w64'不包含MinGW二进制文件"
5个评论
艾德·门德斯
2019年3月10日
你好
我已经按照上面所示的步骤,并获得mex -setup来查看mingw二进制文件。但是,当我尝试mex yprime.c时,出现了一个错误。
使用“MinGW64编译器(C)”构建。
C:\mingw-w64\i686-6.3.0-posix-dwarf-rt_v5-rev2\mingw32\bin\gcc -DUSE_MEX_CMD -m64 -DMATLAB_MEX_FILE "C:\Program Files\MATLAB\R2017b/extern/include" -I"C:\Program Files\MATLAB\R2017b/simul金宝appink/include" -I"C:\Program Files\MATLAB\R2017b/extern\lib\win64\mingw64" -fexceptions -fno- ignore -frame-pointer -O2 -fwrapv -DNDEBUG "C:\Users\virtual_000\Documents\MATLAB\yprime.c" -o C:\Users\ virtual__ ~1\AppData\Local\Temp\mex_1847762154678_3576\yprime.obj
使用mex出错
C:\Users\virtual_000\Documents\MATLAB\yprime.c:1:0:抱歉,未实现:64位模式不是
在编译
/*=================================================================
Mingw-64是使用mingw-w64-install的结果,我从那里选择要安装的版本(\i686-6.3.0-posix-dwarf-rt_v5-rev2)。
会有什么问题呢?
非常感谢
asaf本杰明
2021年12月23日
我已经在Windows 10机器上将我的Matlab版本更新到2021b,并根据上面的说明安装了MinGW,但当我尝试运行一个调用“mexcuda”的Matlab脚本时(并且过去使用Matlab 2019b运行时没有问题),我得到了警告和错误:
警告:所选CUDA编译不支持c++编译器。金宝app搜索受支持的编译器。金宝app
>在美可达(第96行)
在mexGPUall(第7行)
错误使用墨西哥人
金宝app支持未检测到编译器。对的选择,请访问//www.tatmou.com/金宝appsupport/compilers。
错误在美可达(第168行)
[varargout{1:nargout}] = mex(mexArguments{:});
错误在mexGPUall(第7行)
mexcuda-largeArrayDims mexThSpkPC.cu
运行
采用MW_MINGW64_LOC
返回
MATLAB的C: \ ProgramData金宝app \ \ SupportPackages \ R2021b \ 3 p.instrset \ mingw_w64.instrset '
并运行:
墨西哥人设置
显示:
墨西哥人配置为使用“MinGW64编译器(C)”进行C语言编译。
来选择一个不同的C编译器中,选择一个来自以下:
MinGW64编译器(C)C: C:\Users\asafbe\AppData\Roaming\MathWorks\MATLAB\R2021b\mex_C_win64.xml
微软Visual c++ 2015 (C)` C:\Program Files\MATLAB\R2021b\bin\win64\mexopts\msvc2015.xml `
来选择不同的语言中,选择一个来自以下:
墨西哥人设置c++
墨西哥人设置FORTRAN
但是我没有尝试VS 2015和MinGW64,我的选择都没有修复上面的错误。任何帮助都将不胜感激。
1评论
沃尔特·罗伯森
2021年12月23日
看看GPU编码器专栏。对于R2021b,支持用于该任务金宝app的Windows编译器是Microsoft Visual c++ 2019产品系列和Microsoft Visual c++ 2017产品系列