【问题标题】:Permanently adding to DYLD_LIBRARY_PATH on MAC causes X11 errors永久添加到 MAC 上的 DYLD_LIBRARY_PATH 会导致 X11 错误
【发布时间】:2014-09-17 18:08:45
【问题描述】:

我正在使用 Python 2.7 并尝试导入 graph_tool,但似乎我的 libboost_thread-mt.dylib 位于 /opt/local/lib 而不是 /usr/local/lib。

如果我启动一个 X11 终端并输入

   export DYLD_LIBRARY_PATH='/opt/local/lib' 

然后 Python 成功导入 graph_tool。另一方面,如果我添加

   export DYLD_LIBRARY_PATH='/opt/local/lib':$DYLD_LIBRARY_PATH

~/.bash_profile,X11 停止工作。我真的很困惑这里发生了什么。为什么我不能将/opt/local/lib 永久添加到$DYLD_LIBRARY_PATH 而不会破坏我的计算机?

非常感谢任何帮助。谢谢!

【问题讨论】:

    标签: python dyld graph-tool


    【解决方案1】:

    尝试永久设置DYLD_LIBRARY_PATH 几乎总是表明您做错了什么。在 OS X 上,精心设计的组件会将绝对路径或RPATHs 嵌入到共享库中,因此很少需要设置环境变量来覆盖库搜索路径。

    由于您显示路径/opt/local/lib,我假设您使用的是 MacPorts,因为这是它的默认安装路径。如果您无法导入 MacPorts 安装的 Python 包,则可能是您使用了错误的 Python 实例。 MacPorts 将所有 Python 包安装到它自己的 Python 解释器中。所以,如果你安装了 Python 2.7 版本:

    sudo port install py27-graph-tool
    

    MacPorts 也会在/opt/local/bin 中安装它自己的python2.7(如果尚未安装)。尝试运行它并在那里进行导入。

    /opt/local/bin/python2.7
    

    如果您还没有,您应该将/opt/local/bin 添加到shell 启动文件中的shell PATH 中,例如~/.profile,因此您不需要总是输入/opt/local/bin

    【讨论】:

      猜你喜欢
      • 2020-03-05
      • 1970-01-01
      • 2021-12-31
      • 1970-01-01
      • 1970-01-01
      • 2016-08-11
      • 2023-02-16
      • 1970-01-01
      • 2020-11-22
      相关资源
      最近更新 更多