3

I updated XQuartz, and now it doesn't load, complaining that:

Dyld Error Message:
  Library not loaded: /opt/X11/lib/libfreetype.6.dylib
  Referenced from: /Applications/Utilities/XQuartz.app/Contents/MacOS/X11.bin
  Reason: Incompatible library version: X11.bin requires version 14.0.0 or later, but libfreetype.6.dylib provides version 13.0.0

However, if I otool -L /opt/X11/lib/libfreetype.6.dylib:

/opt/X11/lib/libfreetype.6.dylib:
    /opt/X11/lib/libfreetype.6.dylib (compatibility version 14.0.0, current version 14.2.0)
    ...

So the library is the right version!

What could cause this error?

4

1 回答 1

1

此类错误是由用户在其环境中设置 DYLD_LIBRARY_PATH 引起的。这可能在 /etc/launchd.conf、/etc/profile、/etc/bashrc、~/.profile、~/.bashrc、~/.bash_profile 或类似文件中完成。

DYLD_LIBRARY_PATH 包含一个目录,其中包含一个名为 libfreetype.6.dylib 的文件,该文件用于代替 XQuartz 中包含的文件。

谁给你建议设置 DYLD_LIBRARY_PATH 可能是错误的。它只应在非常特定的情况下使用,例如在开发环境中。它几乎不应该用于运输产品,也不应该在您的 shell 环境中设置为一般解决方法。

于 2014-12-28T20:16:08.617 回答