解决matlab遇到的“错误使用 mex未找到支持的编译器或 SDK。”)
因为coco数据集转pascal数据集需要用到matlab的以下代码:
mex('CXXFLAGS=\$CXXFLAGS -std=c++11 -Wall','-largeArrayDims',...
'private/gasonMex.cpp','../common/gason.cpp',...
'-I../common/','-outdir','private');
CocoUtils.convertPascalGt( 'D:/datasets', '2013', 'val', 'D:/datasets/pascal_val2013.json')
CocoUtils.convertPascalGt( 'D:/datasets', '2013', 'test', 'D:/datasets/pascal_test2013.json')
这个mex命令一直报 “错误使用 mex
未找到支持的编译器或 SDK。” 的错误,百度上搜了一下尝试了各种乱七八糟的操作都未能解决。
后来看到这篇博客才发现了很有可能是配置文件出的问题(在此非常感谢!)https://blog.csdn.net/qikaihuting/article/details/83275712
按照参考的博文中,去到了 MATLAB\R2016b\bin\win64\mexopts目录下,才发现自己确实没有 “msvc2017.xml”和“msvcpp2017.xml” 这两个配置文件(我自己用的是matlab版本是** R2016b**,用的VS版本是 2017,那肯定是不行的了)
然后去https://download.csdn.net/download/probloys/10765135
下载了 “msvc2017.xml”和“msvcpp2017.xml”,放到了对应的目录下,问题顺利解决!