本文主要介绍了 Matlab_2014a 破解版的安装方法以及安装完成后遇到问题的解决方法
请务必阅读文末的问题解决方法,因为这是共性问题,如过现在没遇到那些问题,等遇到后再来翻阅也行。

Matlab_2014a 网盘链接
密码: nfdk

参考文章 1
参考文章 2
参考文章 3
参考文章 4

# 安装过程

  • 首先将 iso (只读) 文件挂载到 /mnt/tmp 下
sudo mkdir -p /mnt/tmp
sudo mount -t iso9660 -o loop MATHWORKS_R2014A.iso /mnt/tmp
  • 然后将 iso 中文件整体复制到另外 可读写的 本地目录 /mnt/matlab 下
sudo mkdir -p /mnt/matlab
cd /mnt/tmp
sudo cp -R * /mnt/matlab
sudo umount /mnt/tmp
  • 假设破解文件 install.jar,license_405329_R2014a.lic 全部在~/crack/ 目录下
    首先用 crack 中的 install.jar 覆盖原生安装包的 install.jar
    这一步不执行也不影响破解,在 Readme.txt 文件中有说明
sudo cp ~/crack/install.jar  /mnt/matlab/java/jar/install.jar
  • 现在安装
cd /mnt/matlab
sudo  ./install
  • 选择手动安装不连接互联网
    因为某些原因 最好安装在 /opt 下 这样即使重做系统了 拷贝出来照样能用
sudo mkdir -p /opt/matlab
  • 选择安装路径,就是 /opt/matlab
    输入 key:
    12345-67890-12345-67890
    选择安装工具箱 可全部安装
    选择没有互联网使用文件激活
    选中 crack 目录下的 license_405329_R2014a.lic 许可证文件

  • 暂时不要开 matlab 继续替换 crack 目录下的 linux 目录下给出的 libmwservices.so 文件
    并且对原生的 libmwservices.so 改名处理 或直接删除
    注意下方第三行 cp 命令 最后的 点号

cd /opt/MATLAB/R2014b/bin/glnxa64
sudo mv libmwservices.so libmwservices.so.old
sudo cp  ~/crack/libmwservices.so    .

* 删除之前复制的文件

cd /mnt/
sudo rm -r matlab

如果想从终端启动 matlab 则要加入相应路径到环境变量 PATH;如果安装过程中已经自动添加过了,则不需要再执行下面操作,你可以在终端直接输入 matlab 先试试

vim .bashrc    
#或者 vim .zshrc ( 若在用zsh)   然后加入下面一句
PATH="$PATH:/opt/matlab/bin"
#为了用的舒服点 再加上下面一句 
alias matlab='nohup matlab  -desktop & ' 
#注意需要带-desktop参数  不然可能闪退

# 遇到的问题

  • MATLAB is selecting SOFTWARE OPENGL rendering
或者
libGL error: MESA-LOADER: failed to open i965 (search paths /usr/lib/x86_64-linux-gnu/dri:\$${ORIGIN}/dri:/usr/lib/dri)
libGL error: failed to load driver: i965
libGL error: MESA-LOADER: failed to open i965 (search paths /usr/lib/x86_64-linux-gnu/dri:\$${ORIGIN}/dri:/usr/lib/dri)
libGL error: failed to load driver: i965
libGL error: MESA-LOADER: failed to open swrast (search paths /usr/lib/x86_64-linux-gnu/dri:\$${ORIGIN}/dri:/usr/lib/dri)
libGL error: failed to load driver: swrast
或者
OpenGL appears to be installed incorrectly.
或者
其他一系列关于libGL或OPENGL警告

原因:matlab 的 libstdc++ 库和系统库不匹配造成的
解决方法:

ln -sf /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.25 /opt/matlab/sys/os/glnxa64/libstdc++.so.6

这里的 libstdc++.so.6.0.25,在你的电脑上可能是 libstdc++.so.6.0.21 之类的

  • 在 matlab 中使用 doc 等命令时出现
Exception in thread "XPCOMMessageLoop" java.lang.UnsatisfiedLinkError: /usr/local/MATLAB/R2015a/sys/jxbrowser/glnxa64/xulrunner/xulrunner-linux-64/libxul.so: /lib/x86_64-linux-gnu/libcairo.so.2: undefined symbol: FT_Get_Var_Design_Coordinates
	at java.lang.ClassLoader$NativeLibrary.load(Native Method)
	at java.lang.ClassLoader.loadLibrary1(Unknown Source)
	at java.lang.ClassLoader.loadLibrary0(Unknown Source)
	at java.lang.ClassLoader.loadLibrary(Unknown Source)
	at java.lang.Runtime.load0(Unknown Source)
	at java.lang.System.load(Unknown Source)
	at com.teamdev.jxbrowser.gecko.xpcom.impl.linux.LinuxMozillaToolkit.c(Unknown Source)
	at com.teamdev.jxbrowser.gecko.xpcom.impl.linux.LinuxMozillaToolkit.a(Unknown Source)
	at com.teamdev.jxbrowser.gecko.xpcom.MozillaToolkit.initialize(Unknown Source)
	at com.teamdev.jxbrowser.gecko.xpcom.AppShellXPCOMThread$b.run(Unknown Source)

解决方法:
对在 /opt/matlab/bin/glnxa64 中的文件重命名

sudo mv matlabroot/bin/glnxa64/libfreetype.so.6  matlabroot/bin/glnxa64/BK_libfreetype.so.6