链接到Leopard的libcrypto吗?

问题描述:

我正在使用Mac OS X 10.6 SDK,并且我的部署目标设置为Mac OS 10.5.我链接到libcrypto(AquaticPrime需要此链接),发现我的应用程序未在Leopard上启动.错误是

I am using Mac OS X 10.6 SDK and my deployment target is set to Mac OS 10.5. I'm linking to libcrypto (AquaticPrime requires this) and found out that my app doesn't launch on Leopard. The error is

dyld: Library not loaded: /usr/lib/libcrypto.0.9.8.dylib

我尝试了以下变通办法,但都无济于事:

I've tried the following workarounds but none of them work:

  • 直接链接到libcrypto.0.9.7.dylib(10.6 SDK拒绝直接链接到libcrypto.0.9.7.dylib.
  • 将10.5 SDK的libcrypto.0.9.7.dylib版本复制到10.6 lib目录中,并尝试与之链接(这一次链接过程成功,但是在Leopard中,应用程序仍尝试查找不存在的libcrypto.0.9.8.dylib文件,因此获得了胜利启动).
  • 从Mac OS X 10.5.8安装中复制libcrypto.0.9.7.dylib并与其链接(链接成功,但应用程序仍在寻找libcrypto.0.9.8.dylib).
  • Linking directly to libcrypto.0.9.7.dylib (the 10.6 SDK refuses to link directly with libcrypto.0.9.7.dylib.
  • Copying the 10.5 SDK's version of libcrypto.0.9.7.dylib to the 10.6 lib directory and try t link with it (this time the link process succeeded but in Leopard the app still tries to lookup the non-existent libcrypto.0.9.8.dylib file and thus won't launch).
  • Copying libcrypto.0.9.7.dylib from a Mac OS X 10.5.8 installation and link with it (the link was successful but the app still looks for libcrypto.0.9.8.dylib).

是否可以链接到该库并仍然使用10.6 SDK?

Is there a way to link to this library and still use the 10.6 SDK?

谢谢.

您可以尝试在目标构建设置中将基本SDK设置为10.5.

You could try setting the base SDK to 10.5 in your target build settings.