【问题标题】:MATLAB 2014a (8.3) Compiler Runtime Errors libmwlaunchermain.soMATLAB 2014a (8.3) 编译器运行时错误 libmwlaunchermain.so
【发布时间】:2014-07-23 03:27:12
【问题描述】:

MATLAB 2014a (8.3) 运行时编译器 (MCR) 尝试启动部署时出错(使用 在 Ubuntu 13.04 中部署工具)应用程序。

在安装 MCR 之后,如果运行已部署的应用程序,则会出现以下错误:

error while loading shared libraries: libmwlaunchermain.so: cannot open shared object file: No such file or directory.

【问题讨论】:

标签: matlab ubuntu matlab-compiler


【解决方案1】:

由于我已经找到了解决这个浪费一天的问题的方法,所以我只是想分享一下:

这似乎是 MathWorks 为 Linux 设计的 MATLAB MCR 安装脚本的问题。此外,它是a known Ubuntu bug 的结果。要修复它,请将您的 MCR 添加到 $PATH,如下所示:

  • 首先确保将丢失的文件添加到正确的文件夹中,在终端中:

    sudo cp /usr/local/MATLAB/MATLAB_Compiler_Runtime/v83/runtime/glnxa64/* /usr/local/MATLAB/MATLAB_Compiler_Runtime/v83/bin/glnxa64
    
  • 将正确的库文件夹添加到您的.profile,这样此更改将在注销后保留

    ubuntu: gedit .profile
    

    在文件末尾添加以下行:

    #MATLAB MCR
    
    export LD_LIBRARY_PATH=/usr/local/MATLAB/MATLAB_Compiler_Runtime/v83/bin/glnxa64
    export XAPPLRESDIR=/usr/local/MATLAB/MATLAB_Compiler_Runtime/v83/X11/app-defaults
    
    export PATH=$PATH:$LD_LIBRARY_PATH
    export PATH=$PATH:$XAPPLRESDIR
    
  • 在终端中调用以下代码以确保 Ubuntu 错误不会重写您的变量:

    echo STARTUP=\"/usr/bin/env LD_LIBRARY_PATH=\${LD_LIBRARY_PATH} \${STARTUP}\" | sudo tee /etc/X11/Xsession.d/90preserve_ld_library_path
    
  • 重启

如果此解决方案不起作用,请尝试从 MathWorks 网站重新安装 MATLAB MCR 8.3 并重复这些步骤。

【讨论】:

    【解决方案2】:

    在我的例子中(Matlab R2016b = v91),Matlab 生成的二进制文件伴随着一个 shell 脚本,它为我设置了LD_LIBRARY_PATH。如果我只是跑

    ./run_scriptname.sh
    

    它抱怨缺少<deployedMCRroot>。所以运行脚本

    ./run_scriptname.sh /home/user/MatlabMCR/v91
    

    开箱即用。

    对我来说,上面显示的路径并不明显是<deployedMCRroot>,因为我选择了/home/user/MatlabMCR作为安装目录。并且指定了错误的路径,它会导致相同的错误消息。

    【讨论】:

      猜你喜欢
      • 2014-08-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-10-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多