我无法让Phusion Passenger在OS X Yosemite上运行

时间:2014-10-20 14:29:47

标签: passenger osx-yosemite

我最近将我的MacBook升级为Yosemite,现在乘客似乎不再工作了。每次我尝试重启Apache时,都会在日志中收到此错误:

[ 2014-10-19 17:08:51.6913 9735/0x7fff7b970300 agents/HelperAgent/Main.cpp:650 ]: PassengerHelperAgent online, listening at unix:/tmp/passenger.1.0.9726/generation-0/request
dyld: Library not loaded: /opt/local/lib/libcurl.4.dylib
Referenced from: /Users/barry.flinn/.rvm/gems/ruby-2.0.0-p353@sermo/gems/passenger-4.0.53/buildout/agents/PassengerLoggingAgent
Reason: Incompatible library version: PassengerLoggingAgent requires version 8.0.0 or later, but libcurl.4.dylib provides version 7.0.0

当我运行otool -L /opt/local/lib/libcurl.4.dylib时,我得到:

/opt/local/lib/libcurl.4.dylib:
    /opt/local/lib/libcurl.4.dylib (compatibility version 8.0.0, current version 8.0.0)
    /opt/local/lib/libidn.11.dylib (compatibility version 18.0.0, current version 18.12.0)
    /opt/local/lib/libssl.1.0.0.dylib (compatibility version 1.0.0, current version 1.0.0)
    /opt/local/lib/libcrypto.1.0.0.dylib (compatibility version 1.0.0, current version 1.0.0)
    /opt/local/lib/libz.1.dylib (compatibility version 1.0.0, current version 1.2.8)
    /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1213.0.0)

但是,系统版本/usr/lib/libcurl.4.dylib给出:

/usr/lib/libcurl.4.dylib:
    /usr/lib/libcurl.4.dylib (compatibility version 7.0.0, current version 8.0.0)
    /System/Library/Frameworks/Security.framework/Versions/A/Security (compatibility version 1.0.0, current version 57031.1.27)
    /System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation (compatibility version 150.0.0, current version 1151.14.0)
    /System/Library/Frameworks/LDAP.framework/Versions/A/LDAP (compatibility version 1.0.0, current version 2.4.0)
    /System/Library/Frameworks/Kerberos.framework/Versions/A/Kerberos (compatibility version 5.0.0, current version 6.0.0)
    /usr/lib/libz.1.dylib (compatibility version 1.0.0, current version 1.2.5)
    /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1213.0.0)

尽管我已经知道了,尽管我对/opt/local/lib/libcurl.4.dylib构建了mod_passenger,它仍然试图在/usr/lib/libcurl.4.dylib使用lib运行。我被困在试图找出原因。

1 个答案:

答案 0 :(得分:0)

请查看here。升级到Yosemite之后我遇到了同样的问题,我的解决方案是取消设置DYLD_LIBRARY_PATH(这是macports建议的解决方案之一)