libsvm与matlab,安装调试

趁着所里的网好,我赶紧写下这么一篇bug调试,是关于matlab与 libsvm-mat-2.89-3[FarutoUltimate3.0Mcode] 的(一下简称libsvm)。

闲话不多说了,首先介绍一下博主的机器:
win10 64 bit
matlab 2013ra 破解版 64bit
visula studio 2013

按照网上的说法,运行libsvm中的make.m可以完成安装,但是博主运行之后出现了找不到编译器的错误,网上找资料说:不支持VS2013 ,需要自己配置,这里博主给你一个地址,上面是配置好的,你只需按照步骤将文件复制粘贴到指定的文件夹即可。
visual studio 2013配置文件

然后可以选择编译器了,但是又会出现问题:

  • No supported SDK or compiler was found on this computer.

然后去下载了一个

Supported and Compatible Compilers – Release 2013a

你以为这样好了吗?
又出现:

Errorusing ==>svmtrain at 172 Group mustbe a vector.
解决方法:set path -Add with Subfolders-选择libsvm目录,我这里将libsvm下的内容解压到matlab下的bin中。

可能会出现:

Error using mex (line 206)
Unable to complete successfully.

Error in make (line 3)
mex -O -c svm.cpp

libsvm在matlab下的编译,在32bit和64bit的编译方式不一样,直接运行make.m,会在64bit系统出现问题,应该将代码更改为:

mex -largeArrayDims -o -c svm.cpp
mex -largeArrayDims -o -c svm_model_matlab.c
mex -largeArrayDims -o svmtrain.c c svm.o svm_model_matlab.o
mex -largeArrayDims -o svmpredict.c svm.o svm_model_matlab.o
mex -largeArrayDims -o libsvmread.c
mex -largeArrayDims -o libsvmwrite.c

最后可以成功生成以下文件:

svmpredict.mexa64
svmtrain.mexa64
libsvmread.mexa64
libsvmwrite.mex64

你可能感兴趣的:(matlab,bug,调试,libsvm)