2011-06-15 41 views
5

Ứng dụng của tôi tạo và chạy tốt trên 10.6. Tôi đã đặt SDK cơ sở thành 10.6 và Mac OS X Deployment Target thành 10.5.Phiên bản tương thích với Mac OS X libcurl dylib

Ứng dụng của tôi sử dụng hệ thống libcurl.dylib - thay vì thêm dylib vào dự án, tôi chỉ cần thêm -lcurl vào cờ liên kết trong cài đặt bản dựng. (. Mặc dù tôi đã thử nó cả hai cách)

Khi tôi chạy ứng dụng trên 10.5.8, tôi nhận được lỗi sau

Dyld Thông báo lỗi: Thư viện không nạp:/usr/lib/libcurl. 4.dylib

tham chiếu từ:/Applications/Application.app/Contents/MacOS/MyApplication My

Lý do: không tương thích thư viện phiên bản:

MyApplication đòi hỏi phiên bản 6.0.0 hoặc 01.235.sau, nhưng libcurl.4.dylib cung cấp phiên bản 5.0.0

Chắc chắn, nếu tôi otool -L nhị phân của ứng dụng, tôi nhận được sau cho libcurl:

/usr/lib/libcurl .4.dylib (phiên bản tương thích 6.0.0, phiên bản hiện tại 6.1.0)

Có cách nào xung quanh vấn đề này hay tôi chỉ nên liên kết tĩnh xây dựng libcurl của riêng mình?

Trả lời

3

Bạn đã thử đặt SDK cơ sở thành 10.5 chưa?

$ 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) 
    [...] 
+0

Điều này có tác dụng và cảm ơn! –

Các vấn đề liên quan