matlab2018a编译libsvm

此文接上篇MATLAB2018a安装libsvm工具箱的方法,按上篇安装好libsvm后,我试着运行灰狼优化算法,但一直报错,原因在于没有对libsvm进行编译,现自己编译成功后,记录一下步骤以分享,毕竟自己花了一个下午才弄好,小白一枚,太难找教程了,此篇以供借鉴,希望对大家有所帮助

PS:在完成上篇的基础上(文章链接:https://blog.csdn.net/weixin_42561730/article/details/104963856),继续下一步

一、开始调试,打开matlab,要将当前文件夹设置到D:\tool\2018amatlab\toolbox\libsvm-3.23\matlab,一定要进入到matlab这个文件夹里面!!!如下

二、输入命令

1、在命令行窗口中输入mex -setup,注意啊,mex后面是个空格,一定别漏掉了。为避免出错,最好复制黏贴(由于没有编译器故出现如下错误)

解决办法:下载编译器,具体如下

点击附加功能--找到MinGW-w64,并点击进去-----下载

下载解压得到mingw.mlpkginstall文件(这个文件不是exe可执行文件,需要在matlab中安装)复制到D:\tool\2018amatlab\toolbox\libsvm-3.23\matlab下,然后打开matlab软件,双击mingw.mlpkginstall文件即可安装。

安装完成后重新在命令窗口下输入mex -setup,出现如下则成功,进行下一步操作,选择mex -setup C++

点击mex -setup C++后得到以下

接下来,在当前文件夹下找到make.m文件,双击打开,在命令窗口下输入make命令

我在运行make指令时报错

根据网上提供的解决方案是:

将make.m文件中的所有 “CFLAGS”替换成”COMPFLAGS”

但不知为何,我采用此方法后仍然无法解决,后尝试重启电脑,偶然成功!!!

到这就结束啦,大家可自行测试libsvm工具箱