天天看点

Ubuntu server安装Matlab2014a以及make matcaffe(搞定ubuntu无图形界面安装matlab)

话说,我不是实验室管理服务器的小伙伴,也不是什么计算机大神,对于装系统一窍不通。无奈,最近实验室的小伙伴们都很忙,我只能自己装一下matlab,并且配置一下caffe的matlab,不然,有2块gpu因为matlab空着,着实让人心痛!!!

-----------------踩坑无数,总结了这篇系统的文章,如果喜欢,欢迎大家浏览---------------

1 . 下载matlab2014a压缩包和crack文件。

下载地址:http://pan.baidu.com/s/1qYJ9tNm。放在任意目录下,我放在我自己的

/home/xxx/Matlab/

下,解压。

2 . 创建一个文件夹作为镜像文件的挂在目录

sudo mkdir /media/matlab   #镜像文件挂载目录
sudo mkdir /usr/local/matlab2014a   #matlab安装目录
           

3 . 挂载镜像文件

sudo mount -o loop /home/xxx/Matlab/MATHWORKS_R2014A.iso
           

4 . 进入挂载目录,执行无图形界面安装

cd /media/matlab
sudo ./install -mode silent -agreeToLicense yes -fileInstallationKey 29797-39064-48306-32452 -licensePath /home/xxx/Matlab/Crack/license_405329_R2014a.lic -destinationFolder /usr/local/matlab2014a
# silent是因为没有图形界面
           

如果看到

End - Successful
Finished
           

就说明安装成功了

5 . 将破解文件中

libmwservices.so

替换安装目录中的

sudo cp libmwservices.so /usr/local/matlab2014a/bin/glnxa64/
           

6 . 运行matlab

cd /usr/local/matlab2014a/bin/
sudo ./matlab
           

会出现如下错误

Error: Activation cannot proceed. You may either:
1. Set an X11 display, and restart the activation process
2. Use the silent activation feature
3. Activate using the license center
           

这是因为没有激活。创建activate.ini文件。

sudo vim activate.ini

。输入如下内容:

isSilent=true
activateCommand=activateOffline
licenseFile=/home/xxx/Matlab/Crack/license_405329_R2014a.lic
           

运行激活文件:

sudo ./activate_matlab.sh -propertiesFile ./activate.ini
           

如果提示

Silent activation succeeded

,则激活成功。

7 . 设置环境变量

sudo vim /etc/profile
           

在文件末尾添加:

export PATH=/usr/local/matlab2014a/bin:$PATH
           

保存并使其生效:

source /etc/profile
           

8 . 这时候在任意地方输入

matlab

都会成功显示

Ubuntu server安装Matlab2014a以及make matcaffe(搞定ubuntu无图形界面安装matlab)

9 . 编译caffe。用ubuntu16默认的gcc5.4编译就好。

10 . 编译caffe的matcaffe。

make matcaffe
           

这时候会显示错误,错误理由是:g++的版本是5.4,但是caffe只能支持gcc和g++的4.9来mex。因此,第一反应是降低gcc版本。建议不要这么做,因为我这么做了,反而

make all

的时候就会出错。如果操作呢?

方法一:

  • 安装gcc4.9和g++4.9
sudo apt-get install gcc-4.9 g++-4.9 gcc-4.9-multilib g++-4.9-multilib
           
  • 改变matlab编译时所用的gcc和g++版本。

修改gcc文件

cd /usr/local/matlab2014b/bin/glnxa64/mexopts
sudo vim gcc_glnxa64.xml
           

Name="gcc"

Name="gcc-4.9"

ShortName="gcc"

改为

ShortName="gcc-4.9"

。保存。

修改g++文件

sudo vim g++_glnxa64.xml
           

Name="g++"

Name="g++-4.9"

ShortName="g++"

改为

ShortName="g++-4.9"

。保存。

方法二:

在Makefile.config的末尾加上:

CXXFLAGS += -std=c++11
           

11 . 重新编译caffe。这时候

make matcaffe

的时候就不会有问题了。

Ubuntu server安装Matlab2014a以及make matcaffe(搞定ubuntu无图形界面安装matlab)

12 . 解除挂载

sudo umount /media/matlab
           

13 . 最近几天caffe又有问题了,不能用matlab的caffe了

Ubuntu server安装Matlab2014a以及make matcaffe(搞定ubuntu无图形界面安装matlab)

解决这个问题,需要修改bashrc文件

vim ~/.bashrc
#添加
export LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libopencv_highgui.so.2.4:/usr/lib/x86_64-linux-gnu/libopencv_imgproc.so.2.4:/usr/lib/x86_64-linux-gnu/libopencv_core.so.2.4:/usr/lib/x86_64-linux-gnu/libstdc++.so.6:/usr/lib/x86_64-linux-gnu/libfreetype.so.6

export LD_LIBRARY_PATH=/usr/lib/x86_64-linux-gnu/

source ~/.bashrc
make mattest
           
  1. 没有安装NVIDIA NCCL,以至于不能多GPU并行运算
git clone https://github.com/NVIDIA/nccl.git
cd nccl
sudo make install -j4
sudo ldconfig
vim ~/caffe/Makefile.config
#添加下面文字
USE_NCCL := 1

###之后重新编译caffe即可
           
  1. mattest出错 libcudart.so.8.0: cannot open shared object file
sudo cp /usr/local/cuda-8.0/lib64/libcudart.so.8.0 /usr/local/lib/libcudart.so.8.0 && sudo ldconfig
sudo cp /usr/local/cuda-8.0/lib64/libcublas.so.8.0 /usr/local/lib/libcublas.so.8.0 && sudo ldconfig
sudo cp /usr/local/cuda-8.0/lib64/libcurand.so.8.0 /usr/local/lib/libcurand.so.8.0 && sudo ldconfig
--------------------- 
作者:siqi_fighting 
来源:CSDN 
原文:https://blog.csdn.net/u010454261/article/details/71268325 
版权声明:本文为博主原创文章,转载请附上博文链接!
           
  1. 好不容易caffe配置好了 然而python进入不了了 我也是醉了

    问题如下

    python: /home/xxx/anaconda2/bin/…/lib/libtiff.so.5: no version information available (required by /usr/lib/x86_64-linux-gnu/libopencv_highgui.so.2.4)

    python: /home/xxx/anaconda2/bin/…/lib/./libuuid.so.1: no version information available (required by /usr/lib/x86_64-linux-gnu/libSM.so.6)

    python: symbol lookup error: /home/xxx/anaconda2/bin/…/lib/./libharfbuzz.so.0: undefined symbol: FT_Done_MM_Var

LD_PRELOAD="/home/xxx/anaconda2/bin/../lib/libtiff.so.5" python
# 这样很麻烦 每次都需要输入 你可以编辑一个脚本 同时可以将这句话加入.bashrc中,即在.bashrc中输入
LD_PRELOAD="/home/xxx/anaconda2/bin/../lib/libtiff.so.5"  #将其放在python path的前面
           

至此,大功告成,可以幸福的做实验啦~

再次感谢一下博主:

  1. 提供matlab2014a文件
  2. 满满的技术支持,这是他的blog
  3. 提供caffe编译matlab的时候不能用g++5.4的时候,将matlab的gcc改为4.9版本的文档
  4. 提供无界面server版matlab激活等问题的解决方法
  5. libcudart.so.8.0: cannot open shared object file: No such file or directory mattest问题解决
  6. python出错 解决python命令失效问题(来自于博主的matlab失效问题)

继续阅读