22.5. 安装MATLAB®

Contributed by Dan Pelleg.

这一节描述在一个FreeBSD上安装Linux版本的MATLAB® version 6.5。 它工作的很好,除了Java Virtual Machine例外(参考 Section 22.5.5)。

Linux版本的MATLAB可以从MathWorkshttp://www.mathworks.com订购。请确定你也得到了许可文件或安装说明。 等你成功后,让他们知道你想要一个本地FreeBSD版本。

22.5.1. 安装MATLAB

请按照下面的步骤安装MATLAB

  1. root身份插入安装CD并挂载上。 推荐使用安装脚本,为了启动安装脚本,键入:

    # /compat/linux/bin/sh /cdrom/install
    

    Tip: 安装程序是图形的。如果你得到不能打开显示的错误,可以键入 setenv HOME ~USERUSER是你su(1)成的用户。

  2. 当问MATLAB的根目录时,键入: /compat/linux/usr/local/matlab

    Tip: 为了下面的安装过程更方便,在shell提示符下键入 set MATLAB=/compat/linux/usr/local/matlab

  3. 根据获得MATLAB许可时的指示来编辑许可文件。

    Tip: 你可以用你喜欢的编辑器提前准备这个文件,并在安装程序要你编辑它之前拷贝到 $MATLAB/license.dat

  4. 完成安装过程

到这里,你的MATLAB安装已经完成了。 接下来的步骤是让它和你的FreeBSD 系统“胶合”在一起。

22.5.2. 许可管理器的启动

  1. 为许可管理器建立符号链接的脚本:

    # ln -s $MATLAB/etc/lmboot /usr/local/etc/lmboot_TMW
    # ln -s $MATLAB/etc/lmdown /usr/local/etc/lmdown_TMW
    
  2. 建立启动文件/usr/local/etc/rc.d/flexlm.sh。 下面的例子是一个$MATLAB/etc/rc.lm.glnx86的修改版本。 变化的是文件的位置,和模拟Linux下许可管理器的启动。

    #!/bin/sh
    case "$1" in
      start)
            if [ -f /usr/local/etc/lmboot_TMW ]; then
                  /compat/linux/bin/sh /usr/local/etc/lmboot_TMW -u username && echo 'MATLAB_lmgrd'
            fi
            ;;
      stop)
        if [ -f /usr/local/etc/lmdown_TMW ]; then
                /compat/linux/bin/sh /usr/local/etc/lmdown_TMW  > /dev/null 2>&1
        fi
            ;;
      *)
        echo "Usage: $0 {start|stop}"
        exit 1
        ;;
    esac
    
    exit 0
    

    Important: 必须使脚本文件可执行:

    # chmod +x /usr/local/etc/rc.d/flexlm.sh
    

    你也必须替换username为机器上的一个用户(不要是root)。

  3. 用命令启动许可管理器:

    # /usr/local/etc/rc.d/flexlm.sh start
    

22.5.3. 链接Java™运行时环境

改变Java运行时环境(JRE),链接到一个可以工作的版本:

# cd $MATLAB/sys/java/jre/glnx86/
# unlink jre; ln -s ./jre1.1.8 ./jre

22.5.4. 创建MATLAB启动脚本

  1. 把下面的启动脚本放到/usr/local/bin/matlab

    #!/bin/sh
    /compat/linux/bin/sh /compat/linux/usr/local/matlab/bin/matlab "$@"
    
  2. 然后输入命令chmod +x /usr/local/bin/matlab

Tip: 依赖于你的emulators/linux_base版本, 你在运行这个脚本时可能会出错,为了避免错误,编辑/compat/linux/usr/local/matlab/bin/matlab, 把这行:

if [ `expr "$lscmd" : '.*->.*'` -ne 0 ]; then

(在13.0.1版本是在第410行)改成:

if test -L $newbase; then

22.5.5. 使用MATLAB

现在你已经准备好了键入matlab来启动使用它。 注意,随MATLAB一起发行的Java版本在FreeBSD下工作的不是很好。 它经常使MATLAB不能退出,你不得不用kill -9来杀掉它。 如果你根本不使用Java,你可以通过MATLAB-nojvm参数来避免这个错误。