说明

  • 网上关于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. EF启程--概念理解(数据库连接)

    简介:Entity Framework 是一种支持 .NET 开发人员使用 .NET 对象处理数据库的对象关系映射程序 (O/RM). 它不要求提供开发人员通常需要编写的大部分数据访问代码. 其中有E ...

  2. C# vb .NET读取识别条形码线性条码ISBN

    ISBN是比较常见的条形码编码规则类型的一种.如何在C#,vb等.NET平台语言里实现快速准确读取该类型条形码呢?答案是使用SharpBarcode! SharpBarcode是C#快速高效.准确的条 ...

  3. Linux之《荒岛余生》(三)内存篇

    原文:https://juejin.im/post/5c00aee06fb9a049be5d3641 小公司请求量小,但喜欢滥用内存,开一堆线程,大把大把往jvm塞对象,最终问题是内存溢出. 大公司并 ...

  4. Java自学-I/O 字节流

    Java 字节流 InputStream OutputStream InputStream字节输入流 OutputStream字节输出流 用于以字节的形式读取和写入数据 步骤 1 : ASCII码 所 ...

  5. 解决:ERROR 1067 (42000): Invalid default value for 'login_time'

    如图操作数据表的时候出现上图的错误 问题的原因就是出在timestamp的默认值不正确,针对以上问题的解决方案是:修改默认值为当前值. sql语言代码: Alter table user modify ...

  6. 记录一个h5页面生成canvas画布做签名的js插件--signature_pad

    demo地址:https://jsfiddle.net/02dLn15g/5/ GitHub地址:https://github.com/szimek/signature_pad 配置项: dotSiz ...

  7. linux软连接和硬链接(总结)

    参考博客: https://www.cnblogs.com/fengdejiyixx/p/10821820.html https://www.runoob.com/linux/linux-comm-l ...

  8. Linux的rpm管理

                            书山有路勤为径,学海无涯苦作舟 自学linux已经有几天了,感觉还可以.坚持下去,就会有收获. 每个系统都用相应的软件的管理,Linux也不例外.下面讲 ...

  9. xadmin引入django-rest-framework

    一.安装: pip install djangorestframework 安装djangorestframework库 https://github.com/encode/django-rest-f ...

  10. Transformer---BERT模型

    一.BERT介绍 论文地址:BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding  BERT ...