ฉันไม่พบว่าแฟล็ก -all_load ทำอะไรเมื่อคอมไพล์โค้ด Objective-C
ฉันมีปัญหาบางอย่างในการอัปโหลดไบนารีไปยัง Apple พวกเขาบอกว่าเป็นเพราะฉันไม่ได้ใช้แฟล็กนี้ แต่โค้ดของฉันรวบรวมได้แม้ว่าจะไม่มีก็ตาม
มีใครช่วยฉันได้ไหม
ขอบคุณ
ฉันไม่พบว่าแฟล็ก -all_load ทำอะไรเมื่อคอมไพล์โค้ด Objective-C
ฉันมีปัญหาบางอย่างในการอัปโหลดไบนารีไปยัง Apple พวกเขาบอกว่าเป็นเพราะฉันไม่ได้ใช้แฟล็กนี้ แต่โค้ดของฉันรวบรวมได้แม้ว่าจะไม่มีก็ตาม
มีใครช่วยฉันได้ไหม
ขอบคุณ
คำตอบ:
อาจเกี่ยวข้องกับหมายเหตุทางเทคนิคนี้https://developer.apple.com/library/content/qa/qa1490/_index.html
สิ่งสำคัญ: สำหรับแอปพลิเคชัน 64 บิตและ iPhone OS มีบั๊กตัวเชื่อมต่อที่ป้องกันไม่ให้ -ObjC โหลดไฟล์อ็อบเจ็กต์จากไลบรารีแบบคงที่ซึ่งมีเฉพาะหมวดหมู่และไม่มีคลาส วิธีแก้ปัญหาคือใช้แฟล็ก -all_load หรือ -force_load -all_load บังคับให้ตัวเชื่อมโยงโหลดไฟล์อ็อบเจ็กต์ทั้งหมดจากที่เก็บถาวรทุกไฟล์ที่เห็นแม้กระทั่งไฟล์ที่ไม่มีรหัส Objective-C -force_load มีอยู่ใน Xcode 3.2 และใหม่กว่า ช่วยให้สามารถควบคุมการโหลดไฟล์เก็บถาวรได้ละเอียดขึ้น อ็อพชัน -force_load แต่ละตัวต้องตามด้วยพา ธ ไปยังไฟล์เก็บถาวรและไฟล์อ็อบเจ็กต์ทุกไฟล์ในไฟล์เก็บถาวรนั้นจะถูกโหลด