说明

  • 网上关于caffe的安装教程非常多,但是关于每一步是否操作成功,出现了什么样的错误又该如何处理没有给出说明。因为大家的操作系统的环境千差万别,按照博客中的教程一步步的安装,最后可能失败——这是很常见的哦。有的教程甚至省略了一些细节部分,让小白更不知道如何判断每一步是否操作成功,如何处理出现的错误。
  • 作者花费了很长时间才成功地将caffe装完,期间遇到好多错误,多次重装操作系统。现在将经验写下来,一方面为了和大家分享,讨论;另一方面是为了记录一下下~~~

环境

操作系统: Ubuntu 14.04(64bit)

GCC/G++:4.7.x

OpenCV: 2.4.11和3.0.0

Matlab :R2014b(a)

Python: 2.7

显卡:Telsa K40m & Telsa K20xm

安装步骤

安装Matlab

1. 下载Matlab

  • 下载地址,请自行百度解决。太大了,不方便提供。
  • 版本选择问题。最好下载较新的版本。比如R2014a,R2014b和R2015a等。
  • 下载破解文件Crack文件。一般情况下,crack文件是包含在下载的Matlab安装镜像里面的——除非你下载的是MathWork公司提供的原版。如果里面没有crack文件,自行Google解决。

2. 安装Matlab

  • Matlab安装过程请参考下面的连接(欧新宇)。里面给出了详细的教程。
  • 说明几点:

    • Windows下安装Matlab,直接双击安装文件即可。但是,在Ubuntu中安装Matlab时,是在命令行中安装的。具体而言,在命令行中,切换到Matlab安装包路径下,执行sudo ./install,就会跳出安装会话框。
    • Ubuntu安装Matlab需要在图形界面中操作。如上所言,执行sudo ./install之后,会跳出图形对话框,如果是在纯粹的命令行上,应该无法进行。
    • 安装过程中,依次会提示输入序列号证书路径
  • 切记:图形安装对话框结束之后,Matlab并没有安装完成。

    • 这时尝试打开Matlab会报错。通过在命令行中执行matlab,可以看到返回的错误信息是没哟激活
    • 但是,你可能疑惑,为什么呢?最后激活步骤,明明导入了证书文件(*.lic)?!
    • 这是因为,我们使用的是盗版的的Matlab,所以还需要额外的一步:替换libmwservices.so库文件
    • 替换需要在命令行中操作,还需要root权限(超级用户)。因为需要将libmwservices.so复制到/usr/local/Matlab/R2014b/***目录下,该目录属于root用户,所以需要在命令行中是,使用cp(或mv)命令完成。
    • 替换libmwservices.so之后就可以成功运行Matlab了。
sudo cp libmwservices.so /usr/local/MATLAB/R2014a/bin/glnxa64/
  • 1

3.GCC和G++版本问题

  • 前面《caffe安装系列——安装GCC4.7和G++4.7并降级》介绍了如何实现GCC和G++降级,并提到了为什么这样操作——Ubuntu14.04版本默认的GCC和G++都是4.8。而Matlab默认支持的mex编译器是GCC4.7.x和G++4.7.x。因此需要额外安装GCC4.7和G++4.7并降级。


    *请注意一点: 《caffe安装系列——安装GCC4.7和G++4.7并降级》实现了GCC和G++的降级,但是并没有更改任何的关于Matlab文件。Matalb要使用GCC4.7和G++4.7,还需要做一些工作——重新连接 libstdc++.so.6文件。
  • 具体操作命令如下所示:
#拷贝文件
sudo cp /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.20 /usr/local/MATLAB/R2014a/sys/os/glnxa64/libstdc++.so.6.0.20
# libstdc++.so.6.0.20的版本,可能因为系统不同而不同,使用最新的就可以了。Ubuntu14.04的最新版本是libstdc++.so.6.0.19。
# 切换路径
cd /usr/local/MATLAB/R2014a/sys/os/glnxa64/
# 修改权限
chmod 555 libstdc++.so.6.0.20
#(仅仅是备份,可以不操作)。
sudo mv libstdc++.so.6 libstdc++.so.6.backup
# 重新链接
ln –s libstdc++.so.6.0.20 libstdc++.so.6
# 使配置生效
sudo ldconfig -v
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

4. 建立Matlab的快捷方式

  • 新建一个文本文件(使用vi, gedit等),输入以下内容。退出保存。将该文件放到/home/yourname/Desktop/目录下,既可以看到Matlab的快捷方式。
[Desktop Entry]
Name=Matlab 2014b
Exec=/usr/local/MATLAB/R2014b/bin/matlab -desktop
Icon=/usr/local/MATLAB/R2014b/toolbox/nnet/nnresource/icons/matlab.png
Type=Application
  • 1
  • 2
  • 3
  • 4
  • 5
  • Exec是可执行文件,需要是绝对路径。
  • Icon是图标,如果没有设置的话,不会显示Matlab的标志图标
  • 以上路径根据自己安装路径更改。
  • 快捷方式带一个小锁的问题。看看该文件的属主是谁,如果不是自己,使用chown命令将属主改为自己;如果没有执行权限,使用chmod命令增加可执行权限。

检查

  • 检查Matlab是否安装成功。在命令行中输入matlab,回车。如果打开Matalb,说明安装成功。如果没有打开,将路径切换到Matlab安装路径下的bin文件夹下,再次执行matlab,如果还没有打开,就说明没有安装成功。如果任何一次打开了,就说明安装成功了。
  • 检查GCC版本问题。通过命令strings /usr/local/MATLAB/R2014a/sys/os/glnxa64/libstdc++.so.6 | grep GLIBCXX,可以看一下,是否已经成功包含了GLIBCXX_3.4.20(Ubuntu14.04中是GLIBCXX_3.4.19),如果已经存在,基本上就成功了。

参考链接

《Caffe + Ubuntu 15.04 + CUDA 7.0 新手安装配置指南》——欧新宇

《caffe安装系列——安装GCC4.7和G++4.7并降级》

[ARM-Linux]Linux-MATLAB安装的更多相关文章

  1. Linux下MATLAB安装及使用

    安装过程 1.在在media目录下创建matlab文件夹,并挂载R2017b_glnxa64_dvd1.iso镜像文件 sudo mkdir /media/matlab sudo mount -t a ...

  2. Linux下Matlab的安装

    1 概述 笔者环境Manjaro,本来想直接通过yay安装的,但无奈失败了,于是直接从官网下载进行安装. 2 下载安装包 Matlab官网可以戳这里,点击右上角的Get MATLAB就可以下载了: 没 ...

  3. Linux桌面环境安装matlab并创建快捷方式

    安装matlab sudo mkdir -p /mnt/matlab sudo mount -t auto -o loop /home/chris/Downloads/2016b_linux/R201 ...

  4. [转]Caffe在Linux下的安装,编译,实验

    Caffe在Linux下的安装,编译,实验  原文地址:http://www.cnblogs.com/evansyang/p/6150118.html 第一部分:Caffe 简介 caffe是有伯克利 ...

  5. Linux下编译安装qemu和libvirt

    目录 [hide] 1 安装qemu 1.1 qemu介绍 1.2 下载源文件 1.3 编译安装 2 安装libvirt 2.1 libvirt介绍 2.2 下载libvirt 2.3 编译安装 3  ...

  6. Linux(Ubuntu)下载安装破解Matlab2016

    跳过废话, 直接看教程 前言 笔者平常不是很喜欢用Matlab, 因为所需要的功能都能被Python替代, 而Matlab的肥和慢实在令人难以忍受. 在Linux系统下安装Matlab也比Window ...

  7. Holer实现外网访问ARM嵌入式Linux系统

    公网访问ARM嵌入式Linux系统 实验室里的ARM嵌入式Linux系统,只能在局域网内访问,怎样从公网也能访问内网ARM嵌入式Linux系统? 本文将介绍使用holer实现的具体步骤. 1. 准备工 ...

  8. 外网访问ARM嵌入式Linux系统

    外网访问ARM嵌入式Linux系统 实验室里的ARM嵌入式Linux系统,只能在局域网内访问,怎样从外网也能访问ARM嵌入式Linux系统? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并 ...

  9. Linux下编译安装qemu和libvirt【转】

    转自:http://www.cnblogs.com/findumars/p/5679742.html 目录 [hide] 1 安装qemu 1.1 qemu介绍 1.2 下载源文件 1.3 编译安装 ...

  10. linux中matlab的中文乱码问题

    ref:http://hi.baidu.com/36470902/item/47f3b133c419d989f5e4ade1 将系统的jre拷贝到matlab去 . sudo mv $MATLAB/s ...

随机推荐

  1. Golang程序调试工具介绍(gdb vs dlv)

    原文:http://lday.me/2017/02/27/0005_gdb-vs-dlv/ 通过log库输出日志,我们可以对程序进行异常分析和问题追踪.但有时候,我也希望能有更直接的程序跟踪及定位工具 ...

  2. 解决 Electron 5.0 版本出现 require is not defined 的问题

    Electron已经发布了5.0正式版,升级后发现原来能运行的代码报错提示require is not defined 经查相关资料,原来官方在5.0版本修改了nodeIntegration的默认值, ...

  3. JS基础 —— 数据类型

    JS数据类型分为简单数据类型(基本数据类型)和复杂数据类型(引用数据类型). 基本数据类型:Undefined.Null.Boolean.Number.String.Symbol. 引用数据类型:Ob ...

  4. Flex,Flash,AS3,AIR的关系和区别

    转自:http://www.admin10000.com/document/156.html 本文详细介绍了 Flash.Flex.AS3.AIR 的关系和区别.希望对初学者有帮助. AS3 Acti ...

  5. android studio学习---Android studio 导入github工程

    无论是那种方式,都最好是先把github上的工程项目下载到本地,然后修改文件再import 首先要知道  自己的build.gradle,在project下面的版本号是多少,比如我的: depende ...

  6. sqlalchemy相关操作(ORM)

    环境:python3.7,pycharm,mysql ORM(Object-Relational-Mapper) 对象关系映射(ORM)是一种允许您使用面向对象的范例从数据库查询和操作数据的技术,sq ...

  7. go安装配置

    https://www.cnblogs.com/wt645631686/p/8124626.html Win10下安装Go开发环境   关于Go语言有多么值得学习,这里就不做介绍了,既然看了这篇文章, ...

  8. Django框架(九)-- 多表操作:一对一、一对多、多对多的增删改,基于对象/双下划线的跨表查询、聚合查询、分组查询、F查询与Q查询

    一.创建多表模型 一对一:OneToOneField 一对多:ForeignKey 多对多:ManyToManyField 创建表时,会自动添加一个nid字段,并且自增,所以id可以不用手动创建 On ...

  9. 适用于Centos6/7,vsftp自动安装脚本

    #!/bin/bash #vsftp install . /etc/rc.d/init.d/functions NUM=`rpm -q centos-release | awk -F '-' '{pr ...

  10. maven中,dependency 中的 classifier属性

    classifier元素用来帮助定义构件输出的一些附属构件.附属构件与主构件对应,比如主构件是 kimi-app-2.0.0.jar 该项目可能还会通过使用一些插件生成 如 kimi-app-2.0. ...