matlab2013a(x64) 安装 libsvm
来源:互联网 发布:一键转发源码 编辑:程序博客网 时间:2024/05/24 01:42
‘# 原谅我花费一点篇幅写我的第一篇csdn博客 #
每次装软件的过程都很崎岖,需要查阅大量资料,花费大量时间。有时候装个软件可能要在挫折中花费三四天的时间!多么痛的领悟。
在这里,要感谢那些分享过自己经验的人,也是帮了我很大的忙。
受到启发,于是我打算也分享自己在学习工作中解决这些难题的经验,希望对大家有所帮助。
ok,下面正式开始这篇博客的内容
这篇博客主要是
matlab2013a(x64)版本安装libsvm的教程
以及回答我在安装libsvm过程中遇到的问题
时间: 2016 - 05 - 24
环境及工具: win10(x64) + matlab2013a(x64) + libsvm-3.17
安装流程
(32位的朋友,注意这个安装流程不适合你们,原因下面有提及)
一、下载libsvm-3.17
http://download.csdn.net/detail/wzh_xwjh/5648969
该版本是 2013年4月更新的。(千万不要下载最新版,原因在后面)
二、解压libsvm到matlab安装目录的/toolbox文件下
我的解压路径是:C:\Program Files\MATLAB\R2013a\toolbox
(当然也不是一定要解压在这,只是规范,看名字就知道 matlab的工具箱都装在这个文件夹)
三、添加matlab搜索路径
在matlab命令行中输入:pathtool
然后就把libsvm的路径添加进去,
我的路径是:C:\Program Files\MATLAB\R2013a\toolbox\libsvm-3.17\libsvm-3.17\windows
四、安装流程结束,测试
在matlab命令行中输入:libsvmread(‘test.txt’)【错误用法,只是我用来测试】
如果显示如下,那么恭喜你可以正常使用了。以下内容你就可以不用看了。
上述是安装顺利的情况,3步搞定,但事情往往没有这么简单!
下面是我碰到过的问题。
安装过程遇到的问题
问题1、报错:Undefined function ‘libsvmread’ for input arguments of type ‘char’.
分析:这个问题主要是没设置搜索路径或者搜索不到。
解决方法:如果没有设置过,用命令pathtool添加libsvm工具箱所在目录。如果已经设置,检查’libsvmread’是否输入有错以及文件路径设置是否正确。
问题2、报错:Invalid MEX-file ‘C:\Program
Files\MATLAB\R2013a\toolbox\libsvm-3.21\windows\libsvmread.mexw64’:
找不到指定的程序。
分析:这个问题困扰了我很久。下面是官网解释这个错误的说法
官网说了,凡是 Invalid MEX-file :The specified module could not be found. 这种问题都是依赖关系出了问题。给出的解决方法是叫我们安装好依赖库,和设置好系统路径。
然而路径我是正确的,文件我也是有的,还是“找不到指定程序”!!!略坑。仔细思考后我开始寻找问题所在。于是
解决方法:
我首先检查是否matlab与系统版本不一致,导致.mexw64文件无法使用。
这里告诉个小技巧:
64位的软件默认安装在C:\Program Files
32位的软件默认安装在C:\Program Files(x86)
检查后发现我的matlab和系统都是64位的,版本不一致排除检测是否路径的问题。
我把路径故意设置错,发现报错与问题1一样,设置正确的路径报错则与问题2一样,明显,与路径无关,排除。接着我怀疑可能原来下载下来的4个.mexw64文件有错,无法使用。
这里要说明一下了。其他libsvm安装教程中都会提到要自己编译这4个文件。但其实,打开/libsvm/matlab/文件中的README文件可以看到
“On Windows systems, pre-built binary files are already in the
directory ‘..\windows’, so no need to conduct installation. Now we
provide binary files only for 64bit MATLAB on Windows.”
所以我们的安装过程就没有了什么make、mex -setup这些编译过程。
但是32位以及非windows的朋友你们的安装流程就需要多编译这一步了。但现在情况不一样,我们怀疑这些文件有问题所以需要这个步骤。然而这里我又遇到3个问题,但只解决了2个。
1.无法找到编译器。解决:按提示下载软件,我下的是vs2013编译器。(结果显示这是错误的选择)
2.matlab2013不支持vs2013。解决:这里我找到了可以关联两个软件的链接文件。
3.仍然无法编译(make/mex - setup编译不出.mexw64文件)。未解决上面解决方法仍没解决问题,于是我继续查找资料。皇天不负有心人,让我看到一句话大概这么个意思“附带的.mexw64文件是用vs最新版本的编译器编译出来的,matlab2013不支持这些文件”。看到这我感动得差点流下眼泪。没错,直觉告诉我就是它了!于是我下载了libsvm-3.17!终!于!成!功!了!
(感谢上天,我差点就放弃了)
总结:
- 不抛弃不放弃!
- 善用下载附带的文档!(libsvm附带的文档,虽然是英文的,但对安装使用都很有帮助,强烈建议阅读一下)
- 珍爱生命,远离百度,多用Google!(用过都知道,google的搜索算法真心甩百度几条街,若不是屈服于网速,我都不想用百度)
- matlab2013a(x64) 安装 libsvm
- LIBSVM入门笔记(matlab2013a+VS2013)
- matlab2013a安装指南
- Ubuntu14.04安装Matlab2013a
- matlab2013a安装libsvm3.21
- Matlab2013a安装之后,打不开
- matlab2013a for linux/Ubuntu 安装步骤及创建快捷方式(ubuntu14.04下安装)
- linux(centos) 无root, 安装matlab2013a
- LIBSVM学习(一)在Matlab环境下安装LIBSVM
- LIBSVM学习(二)在linux环境下安装LIBSVM
- LIBSVM安装
- libsvm安装
- libsvm安装
- libsvm 安装
- libsvm安装
- 研究准备(2) 安装libsvm
- 在 linux(ubuntu) 下 安装 LibSVM
- 在 linux(ubuntu) 下 安装 LibSVM
- HDU-5700-区间交(线段树)
- 旅行
- 类小结1:方法重载 变量 封装 import 继承 重写父类方法 调用父类构造方法 多态
- UIButton(UIEdgeInsets)/设置button上的文字和图片上下垂直居中对齐
- IR077K firmware设计
- matlab2013a(x64) 安装 libsvm
- ACM程序设计选修课——Problem F:(ds:图)旅游规划(优先队列+SPFA)
- Redis安装整理(windows) +php扩展redis
- android邮件收发时出现账号密码错误
- 使用Object-C实现23种设计模式之原型模式
- Android官方开发文档Training系列课程中文版:OpenGL绘图之添加动态效果
- OpenCV(学习笔记7)-图像修复
- 背包问题
- MySQL Meta中的length字段 -- (5) 开始懂了