• 2009-09-23

    Linux Matlab opengl 在debian上的设置 。 - [软件使用]

    版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明
    http://linux.blogbus.com/logs/47014971.html

    1.造成这个Warning是因为Matlab自带OpenGL的库和系统的不一样
    Matlab自带的OpenGL库装在了$MATLABROOT/sys/opengl/lib/$ARCH/
    $MATLABROOT是安装目录
    $ARCH是Matlab安装所在的系统,我的是glnx86,这个参数由$MATLABROOT/bin/util/arch.sh给出
    实际上用到的OpenGL库文件就两个
    libGL.so  :  一般是OpenGL通用库
    libGLU.so   :   用户自定义库
    很显然,libGL.so应该用系统的,而libGLU.so用Matlab带的,
    一般情况下系统的/usr/lib/libGL.so和Matlab带的libGL.so不一样,Matlab用了自带的库,造成和驱动不能interface
    用下面命令也可以看得很清楚,libGL.so和libGLU.so的连接路径
    ldd $MATLABROOT/bin/$ARCH/glren.so

    2.就是要修改OpenGL库文件寻找路径
    首先要把这两个东西整合在一起
    1) 在某个地方建一个安全目录比如

    mkdir /usr/local/opengl
    2) cd /usr/local/opengl
       ln -s /usr/lib/libGL.so.1.2 libGL.so
       ln -s /home/sunny/matlab/sys/opengl/lib/glnx86/libGLU.so.1.2.0 libGLU.so 。
    修改好后,你可以修改LD_LIBRARY_PATH, 让操作系统首先找到/usr/local/opengl这个路径,在命令窗口执行。
    export LD_LIBRARY_PATH=/usr/local/opengl:$LD_LIBRARY_PATH
    然后启动Matlab就可以了
    另外一种比较温和的修改LD_LIBRARY_PATH的方法就是修改Matlab启动参数
    (Matlab启动参数设置,参考:http://www.mathworks.com/access/helpdesk/help/techdoc/ref/matlabunix.html#matlab_unix_refpage)
    我的作法是修改$MATLABROOT/bin/.matlab7rc.sh
    在.matlab7rc.sh
    找到对应$ARCH的那一CASE,把LDPATH_PREFIX=''改为LDPATH_PREFIX='/usr/local/opengl'
    表示加入LD_LIBRARY_PATH的前缀
    到这里,所有的安装问题解决,剩下的就是怎么好好利用Matlab这个工具了


    收藏到:Del.icio.us