Mac OS X libcurl dylib兼容版本

时间:2011-06-15 20:32:38

标签: macos libcurl dylib

我的应用程序在10.6上构建并运行良好。我将Base SDK设置为10.6,将Mac OS X部署目标设置为10.5。

我的应用程序使用系统libcurl.dylib - 我只是将-lcurl添加到构建设置中的链接器标志,而不是将dylib添加到项目中。 (虽然我已经尝试过两种方式。)

当我在10.5.8上启动应用程序时,出现以下错误

  

Dyld错误消息:未加载库:/usr/lib/libcurl.4.dylib

     

引用自:/ Applications / My Application.app/Contents/MacOS/MyApplication

     

原因:库版本不兼容:

     

MyApplication需要6.0.0版或   稍后,但libcurl.4.dylib提供   版本5.0.0

果然,如果我otool -L应用程序的二进制文件,我会得到以下libcurl:

  

/usr/lib/libcurl.4.dylib(兼容版本6.0.0,当前版本6.1.0)

有没有解决方法,或者我应该静态链接我自己的libcurl构建?

1 个答案:

答案 0 :(得分:3)

您是否尝试过将Base SDK设置为10.5?

$ otool -L /Developer/SDKs/MacOSX10.6.sdk/usr/lib/libcurl.4.dylib
/Developer/SDKs/MacOSX10.6.sdk/usr/lib/libcurl.4.dylib:
    /usr/lib/libcurl.4.dylib (compatibility version 6.0.0, current version 6.1.0)
    ...]
$ otool -L /Developer/SDKs/MacOSX10.5.sdk/usr/lib/libcurl.4.dylib
/Developer/SDKs/MacOSX10.5.sdk/usr/lib/libcurl.4.dylib:
    /usr/lib/libcurl.4.dylib (compatibility version 5.0.0, current version 5.0.0)
    [...]