2010-06-08 31 views
29

Tôi muốn xây dựng một thư viện tĩnh cho iphone. Tôi muốn cung cấp cho người dùng thư viện .a mà họ có thể sử dụng cho cả thử nghiệm mô phỏng và kiểm tra thiết bị. Tôi có phải xây dựng hai thư viện ở chế độ mô phỏng và chế độ thiết bị không? Có cách nào để xây dựng một cái duy nhất có thể được sử dụng cho cả hai nền tảng không?Làm thế nào để xây dựng một thư viện cho cả iPhone giả lập và thiết bị?

Trả lời

83

Biên dịch thư viện của bạn hai lần. Sau khi sử dụng SDK thiết bị và một lần nữa sử dụng SDK mô phỏng.

Sau đó, sử dụng công cụ dòng lệnh lipo để tạo thư viện "chất béo".

lipo -create libdevice.a libsimulator.a -output libcombined.a 

Điều đó sẽ cung cấp cho bạn những gì bạn cần.

+0

Cảm ơn câu trả lời nhanh chóng và chính xác của bạn. –

+1

Có điều gì đặc biệt cần được thực hiện trong ứng dụng bằng thư viện không? Tôi đã thử làm điều này với một thư viện tôi đang làm và có lỗi về kiến ​​trúc không phù hợp khi biên dịch một ứng dụng mẫu sử dụng thư viện. – pr1001

+0

Không có bất cứ điều gì bạn cần làm để phân biệt giữa các kiến ​​trúc trong thư viện 'béo'. Bạn có thể thấy lỗi đó nếu các thư viện gốc không được xây dựng với các SDK chính xác trước khi sử dụng lipo. – Jasarien

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