事情的起因当然是因为一个错误,我平时一直在windows下用libsvm,当把程序放到安装了Ubuntu的服务器上就报错了,错误如下:

Error using svmtrain (line 233)

Y must be a vector or a character array.

这个错误出现在matlab自带svmtrain文件,没有调用libsvm下的相应文件,以错误提示为关键词搜索,网上的解释大多是建议添加libsvm文件夹到当前工作目录,添加后仍没有变化。

于是改变搜索关键词为“linux下使用libsvm”,网上的解释为需要从新编译,即命令行下进入libsvm所在目录运行make,但有时会出现错误,结果就遇到了,错误提示是:

g++ -Wall -Wconversion -O3 -fPIC -c svm.cpp

make: g++: Command not found

make: *** [svm.o] Error 127

解决办法是安装g++编译器,在命令行输入 sudo apt-get install g++,注意此时需要有root权限,事实上这一步之前我并不知道g++编译器是何物,所以按照网上的介绍,为了安装g++编译器我还需要安装build-essential package,方法是在命令行依次执行如下:

$ sudo apt-get update

$ sudo apt-get upgrade

$ sudo apt-get install build-essential

$ gcc -v

$ make -v

因为现在我的libsvm已经正常运行,所以安装build-essential这一步的必要性无从验证,如果直接sudo apt-get install g++不报错的化,这一步可以省掉。

接下来在matlab命令行中,进入libsvm目录下的matlab目录,执行make,然后当然要把libsvm目录set path到工作目录下就可以.m文件中调用的svmtrain命令了。

其实我在这一步之前还走了一段弯路,因为搜索的关键词是“linux下使用libsvm”,所以网上的讲解是在命令行下进入libsvm目录然后执行make,之后在这一目录下可以用命令行进行训练,而命令行的调用格式是"./svm-train heart_scale",注意“./”不能少,而svm-train在.m文件中无法调用,我一度想把.mat文件中的特征转换成文本文件,格式如下“类别标签 1:第一维特征 2:第二维特征 ...“。后来想到需要调用的svmtrain在libsvm目录下的matlab目录中,重要的是该文件夹下还有一个make.m文件,于是在matlab命令行下运行他就ok了。

linux下安装libsvm_在ubuntu下的Matlab中使用libsvm相关推荐

  1. ubuntu下安装android sdk,ubuntu下配置Android sdk

    下载 1,下载和复制所需文件到ubuntu jdk,sdk,ndk,Android studio,都要都要 2,在主文件夹上创建一个叫android_develop_tools的文件,并且把sdk等文 ...

  2. linux升级安装失败,更新Ubuntu 16.04系统中安装Adobe Flash更新失败的解决

    最近在更新 Ubuntu 16.04系统的时候,发现总是在安装 Adobe Flash更新的时候失败,提示如下信息: 正在处理用于 update-notifier-common (3.168.5) 的 ...

  3. wsl2设置挂载_Windows下的Linux子系统安装,WSL 2下配置docker

    Windows下的Linux子系统安装,WSL 2下配置docker 前提条件: 安装WSL 2需要Windows 10版本是Build 18917或更高,首先先确认系统版本已升级. 在"启 ...

  4. Win10下安装wsl(Ubuntu 20.04LTS)

    Win10下安装wsl(Ubuntu 20.04LTS) 1. 安装windows terminal 打开应用商店,在搜索框中输入 "windows terminal",点击获取. ...

  5. ubuntu nginx安装php mysql,ubuntu下配置nginx+php+mysql详解

    1.更新 复制代码 代码如下: sudo apt-get update 2.安装nginx 复制代码 代码如下: sudo apt-get intsall nginx Ubuntu安装之后的文件结构大 ...

  6. linux ubuntu安装 mono,在Ubuntu 18.04系统中安装Mono及基本使用Mono的方法

    本文介绍在Ubuntu 18.04操作系统中安装Mono及基本使用Mono的方法.Mono是一个基于ECMA/ISO标准开发和运行跨平台应用程序的平台,它是Microsoft .NET框架的免费开源实 ...

  7. ubuntu下安装UltraEdit 与Ubuntu/Linux下7款轻量级编辑器推荐

    在windows下常年使用UltraEdit来查看log,现在突然切换到ubuntu下,系统自带的Text Editor相当不适应:只有自己安装了. 首先,需要下载安装包,可以去:http://www ...

  8. 终端linux输入法安装程序,在Ubuntu系统下安装百度输入法Linux版的方法

    本文介绍在Ubuntu系统下安装百度输入法Linux版(也称为百度Linux输入法)的方法,以Ubuntu 18.04版本为例说明.说明:该输入法支持在Ubuntu 18.04.1810.1904.1 ...

  9. linux安装gtk命令,Ubuntu 下安装 GTK2.0

    Ubuntu 下安装GTK2.0命令 安装命令: sudo apt-get install gnome-core-devel sudo apt-get install libglib2.0-doc l ...

最新文章

  1. 欢迎关注我的微信公众号 “我是一个假的程序猿”
  2. 计算机应用基础专科,2019年自考《计算机应用基础》专科模拟试题及答案
  3. java可用于开发两类程序_此内容适合初学者java基础知识 第一章
  4. Linux环境下查看IP不显示IPv4地址
  5. 重造车轮—基于JQ的商品展示放大镜
  6. 1008.protobuf语句内存对齐的错误
  7. 框架的配置文件的映射机制
  8. 一文吃透电源中的纹波、噪声和谐波
  9. raft论文阅读理解翻译
  10. 利用全加器实现7段数码管_[走近FPGA]之数码管动态显示
  11. C++ SLT总结1
  12. SX1278 FSK 调试记录
  13. 中秋福利!三维重建/SLAM/点云/相机标定/深度估计/缺陷检测课程
  14. JavaScript函数isFinite()
  15. 微信公众号开发之使用eclipse创建微信web工程并发布到BAE测试
  16. 基于Pyramid Vision Transformer(PVT-v2)实现奥特曼识别
  17. 书友汇德天-创作不停,学习不止(十字交叉线画法)
  18. 12【组合设计模式】
  19. 机器人技术-HC-SR04超声波传感器数据及机器人避障的应用
  20. Integer.valueOf、intValue、Integer.parseInt使用

热门文章

  1. Java 修改文件最后的创建日期
  2. CRITIC法之matlab
  3. python基础入门(10)之循环语句
  4. 教师网络计算机研修日志,教师网络研修日志
  5. rhce考试试题以及答案_搞懂这套五年级数学上册期末考试试题(含答案),考试不担心...
  6. 美国计算机科学联赛获奖,【竞赛获奖】西安高新一中国际班学子在2018-2019美国计算机科学联赛 (ACSL)积分赛中创造历史!...
  7. java userdao,Java Web 开发基础------DAO
  8. 软件开发报价模板_定制开发小程序和行业通用(模板)小程序的利弊分析
  9. 数据结构树4-二叉搜索树2
  10. java 自定义 钩子_Java添加关闭钩子里面的方法