Một số thư viện yêu cầu cờ liên kết -all_load khi liên kết đến dự án Xcode. Tuy nhiên, điều này dẫn đến lỗi liên kết nếu có xung đột biểu tượng giữa các thư viện. Giải pháp là sử dụng-force_load, cho phép bạn sử dụng -all_load một cách hiệu quả trên một số thư viện, chứ không phải trên các thư viện khác.Xcode - nhận force_load hoạt động với đường dẫn tương đối
Tuy nhiên, điều này sẽ dẫn đến một vấn đề mới, ít nhất là đối với tôi. Bất cứ khi nào tôi sử dụng-force_load với đường dẫn tương đối vào thư viện, trình liên kết luôn tìm thấy xung đột biểu tượng giữa thư viện và chính nó. Dường như người liên kết nghĩ rằng thư viện với đường dẫn tuyệt đối của nó và thư viện với đường dẫn tương đối của nó là các thư viện khác nhau, và do đó tìm thấy xung đột giữa thư viện và chính nó.
Tôi có thể tránh điều này bằng cách sử dụng đường dẫn tuyệt đối với cờ. Nhưng đây không phải là một giải pháp tuyệt vời, vì nó là thuận tiện để giữ mã nguồn cho các thư viện trong thư mục tài liệu của tôi. Nhưng đường dẫn đến thư mục tài liệu sẽ khác trên các máy khác.
Câu hỏi: Có ai có thể lấy force_load hoạt động với đường dẫn tương đối tới thư viện không?
EDIT: cung cấp thông tin nền, xem this question
Cờ -ObjC vi phạm một số khung –
@AlexanderVasenin đó là một tuyên bố khá tốt, bạn nên sao lưu nó bằng các liên kết đến bài đăng ở đây hỗ trợ nó. Cá nhân tôi chưa bao giờ nghe điều này cho đến bây giờ. –
Ví dụ: [link 1] (http://www.personagraph.com/ios#faq19), [link 2] (https://www.parse.com/questions/linker-flag-objc-causes-build- để thất bại) –