我更新了XQuartz,现在它没有加载,抱怨:
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
但是,如果我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)
...
所以图书馆是正确的版本!
什么可能导致此错误?
答案 0 :(得分: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环境中设置为一般的解决方法。