Ubuntu1604装机系列(三):Matlab2017b安装

下载

Matlab下载链接 密码: ckw4
解压后得到xxx_dvd1.isoxxx_dvd2.isocrack破解文件

挂载镜像文件dvd1

1
2
mkdir /home/<user name>/Matlab 
sudo mount -t auto -o loop /home/<user name>/xxx_dvd1.iso /home/<user name>/Matlab

安装

1
2
cd 
sudo ./Matlab/install

Tips

在弹出的安装对话框中,选择离线安装,并填入license number,复制crack解压后出现的readme.txt文件中的第一个安装密钥即可
 
安装路径默认是系统目录,改为/home/<user name>/matlab/r2017b,这样的好处是遵循了Linux处处是文件的思想,方便每个用户的版本管理,同时若安装失败直接删除该/matlab/r2017b文件夹即可。
 
安装选项中,笔者首先选择了全部安装,但symbolic_doc_en_common模块一直提示安装出错,无奈去掉了该模块的对勾,从目前跑的几个模型来看,该模块并无影响。

挂载镜像文件dvd2

安装到一半多,会提示载入dvd2,这时候重启一个终端,用相同的方式载入,点击ok直到安装结束即可

1
2
cd 
sudo mount -t auto -o loop /home/<user name>/xxx_dvd2.iso /home/<user name>/Matlab

结束安装

删除不用的文件夹及卸载盘符

1
2
sudo rm -r /home/<user name>/Matlab  
sudo umount /home/<user name>/Matlab

破解

1
2
3
4
cd crack绝对路径
sudo mkdir /home/<user name>/matlab/r2017b/bin/licenses/
sudo cp license_standalone.lic /home/<user name>/matlab/r2017b/bin/licenses/
sudo cp libmwservices.so /home/<user name>/matlab/r2017b/bin/glnxa64/

启动matlab

1
2
cd /home/<user name>/matlab/r2017b/bin
sudo ./matlab

第一次打开matlab会再次提示输入破解密钥,在对话框窗口中填入crack目录下的license_standalone.lic绝对路径即可。

添加Matlab到系统路径

这里注意一点:路径如果写到/etc/profile,那么会影响到该服务器的所有用户。所以我们在~/.bashrc中进行配置即可

1
export PATH=$PATH:/home/<user name>/Matlab/r2017b/bin

笔者尝试第一种解决方案失败,遂采用了下一种,建立软连接到系统启动目录(注意建立软连接一定要使用绝对路径)

1
sudo ln -s /home/<user name>/Matlab/r2017b/bin/matlab /usr/local/bin/matlab

可能的问题

/usr/local/MATLAB/R2017b/bin/glnxa64/../../sys/os/glnxa64/libstdc++.so.6: version GLIBCXX_3.4.21 not found,运行matlab时出现这样的错误提示是matlab g++版本libstdc++.so.6.0.20版本较低,复制高版本的lib,设置新的软连接即可

1
2
3
4
5
loacte  libstdc++.so.6.0.21 # 查看高版本lib路径
cd ~/<user name>/matlab/r2017b/sys/os/glnxa64
sudo cp /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.21 ./
sudo rm -rf libstdc++.so.6
sudo ln -s libstdc++.so.6.0.21 libstdc++.so.6

不通过sudo启动matlab

注意matlab是隐藏文件,前面有.

1
sudo chmod -R a+rw ~/.matlab