mex 文件 matlab. libsvm错误

mex file matlab. Libsvm error

我尝试将 .c 文件编译为 .mex ,一切顺利并创建了 mex 文件,但它仍然给我以下错误。谁能解释什么是 .exp 文件以及为什么它给我错误?

无法找到 E:\research data\libsvm-3.21\libsvm-3.21\matlab\svmtrain.exp

无法找到 E:\research data\libsvm-3.21\libsvm-3.21\matlab\svmtrain.exp MEX 成功完成。 使用 'Microsoft Windows SDK 7.1 (C++)'.

构建

无法找到 E:\research data\libsvm-3.21\libsvm-3.21\matlab\svmpredict.exp

无法找到 E:\research data\libsvm-3.21\libsvm-3.21\matlab\svmpredict.exp MEX 成功完成。

这个问题可能是C++编译器版本不同导致的。

我通过选择 C++ 2010 编译器解决了这个问题。

要设置编译器,请先键入 "mex -setup",然后键入 "mex -setup:I:\matlab2014b_win7\installation(root of your matlab installation)\bin\win64\mexopts\msvc2010.xml"

MEX configured to use 'Microsoft Visual C++ 2012 (C)' for C language compilation.
Warning: The MATLAB C and Fortran API has changed to support MATLAB
variables with more than 2^32-1 elements. In the near future you will be required to update your code to utilize the new API. You can find more information about this at: http://www.mathworks.com/help/matlab/matlab_external/upgrading-mex-files-to-use-64-bit-api.html.

要选择不同的 C 编译器,select 从以下选择一个:

  • Microsoft Visual C++ 2010 (C)
    mex -setup:I:\matlab2014b_win7\installation\bin\win64\mexopts\msvc2010.xml C
  • 微软 Visual C++ 2012 (C)
    mex -setup:C:\Users\Administrator\AppData\Roaming\MathWorks\MATLAB\R2014b\mex_C_win64.xml C
  • Microsoft Visual C++ 2013 专业版 (C)
    mex -setup:I:\matlab2014b_win7\installation\bin\win64\mexopts\msvc2013.xml C