Apple Mach-O Linker Error เมื่อรวบรวมอุปกรณ์


238

ฉันเพิ่งอัพเกรดเป็น xcode 4.0 และฉันไม่สามารถปรับใช้กับ iPhone ได้อีกต่อไปฉันได้รับข้อผิดพลาด Apple Mach-O Linker มันยังใช้งานได้กับเครื่องจำลอง

    Ld /Users/yveswheeler/Library/Developer/Xcode/DerivedData/iParcel-fkeqjcjcbbhjwhdssjptkdxzzzxh/Build/Intermediates/iParcel.build/Debug-iphoneos/iParcel.build/Objects-normal/armv7/iParcel normal armv7
    cd /Users/yveswheeler/iParcel
    setenv IPHONEOS_DEPLOYMENT_TARGET 3.2
    setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin"
    /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/g++-4.2 -arch armv7 -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.3.sdk -L/Users/yveswheeler/Library/Developer/Xcode/DerivedData/iParcel-fkeqjcjcbbhjwhdssjptkdxzzzxh/Build/Products/Debug-iphoneos -F/Users/yveswheeler/Library/Developer/Xcode/DerivedData/iParcel-fkeqjcjcbbhjwhdssjptkdxzzzxh/Build/Products/Debug-iphoneos -filelist /Users/yveswheeler/Library/Developer/Xcode/DerivedData/iParcel-fkeqjcjcbbhjwhdssjptkdxzzzxh/Build/Intermediates/iParcel.build/Debug-iphoneos/iParcel.build/Objects-normal/armv7/iParcel.LinkFileList -dead_strip -all_load -ObjC -lxml2 -miphoneos-version-min=3.2 -framework UIKit -framework CoreGraphics -framework QuartzCore /Users/yveswheeler/Library/Developer/Xcode/DerivedData/iParcel-fkeqjcjcbbhjwhdssjptkdxzzzxh/Build/Products/Debug-iphoneos/libThree20.a /Users/yveswheeler/Library/Developer/Xcode/DerivedData/iParcel-fkeqjcjcbbhjwhdssjptkdxzzzxh/Build/Products/Debug-iphoneos/libThree20Core.a /Users/yveswheeler/Library/Developer/Xcode/DerivedData/iParcel-fkeqjcjcbbhjwhdssjptkdxzzzxh/Build/Products/Debug-iphoneos/libThree20Network.a /Users/yveswheeler/Library/Developer/Xcode/DerivedData/iParcel-fkeqjcjcbbhjwhdssjptkdxzzzxh/Build/Products/Debug-iphoneos/libThree20Style.a /Users/yveswheeler/Library/Developer/Xcode/DerivedData/iParcel-fkeqjcjcbbhjwhdssjptkdxzzzxh/Build/Products/Debug-iphoneos/libThree20UI.a /Users/yveswheeler/Library/Developer/Xcode/DerivedData/iParcel-fkeqjcjcbbhjwhdssjptkdxzzzxh/Build/Products/Debug-iphoneos/libThree20UICommon.a /Users/yveswheeler/Library/Developer/Xcode/DerivedData/iParcel-fkeqjcjcbbhjwhdssjptkdxzzzxh/Build/Products/Debug-iphoneos/libThree20UINavigator.a -framework AddressBook -lz.1.2.3 -framework Foundation -framework CFNetwork -framework MobileCoreServices -framework SystemConfiguration -framework MessageUI -framework AudioToolbox -o /Users/yveswheeler/Library/Developer/Xcode/DerivedData/iParcel-fkeqjcjcbbhjwhdssjptkdxzzzxh/Build/Intermediates/iParcel.build/Debug-iphoneos/iParcel.build/Objects-normal/armv7/iParcel

arm-apple-darwin10-g++-4.2.1: /Users/yveswheeler/Library/Developer/Xcode/DerivedData/iParcel-fkeqjcjcbbhjwhdssjptkdxzzzxh/Build/Products/Debug-iphoneos/libThree20.a: No such file or directory
arm-apple-darwin10-g++-4.2.1: /Users/yveswheeler/Library/Developer/Xcode/DerivedData/iParcel-fkeqjcjcbbhjwhdssjptkdxzzzxh/Build/Products/Debug-iphoneos/libThree20Core.a: No such file or directory
arm-apple-darwin10-g++-4.2.1: /Users/yveswheeler/Library/Developer/Xcode/DerivedData/iParcel-fkeqjcjcbbhjwhdssjptkdxzzzxh/Build/Products/Debug-iphoneos/libThree20Network.a: No such file or directory
arm-apple-darwin10-g++-4.2.1: /Users/yveswheeler/Library/Developer/Xcode/DerivedData/iParcel-fkeqjcjcbbhjwhdssjptkdxzzzxh/Build/Products/Debug-iphoneos/libThree20Style.a: No such file or directory
arm-apple-darwin10-g++-4.2.1: /Users/yveswheeler/Library/Developer/Xcode/DerivedData/iParcel-fkeqjcjcbbhjwhdssjptkdxzzzxh/Build/Products/Debug-iphoneos/libThree20UI.a: No such file or directory
arm-apple-darwin10-g++-4.2.1: /Users/yveswheeler/Library/Developer/Xcode/DerivedData/iParcel-fkeqjcjcbbhjwhdssjptkdxzzzxh/Build/Products/Debug-iphoneos/libThree20UICommon.a: No such file or directory
arm-apple-darwin10-g++-4.2.1: /Users/yveswheeler/Library/Developer/Xcode/DerivedData/iParcel-fkeqjcjcbbhjwhdssjptkdxzzzxh/Build/Products/Debug-iphoneos/libThree20UINavigator.a: No such file or directory
Command /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/g++-4.2 failed with exit code 1

38
ห่า?! ปัญหาที่แตกต่างกันมากมายสำหรับข้อความแสดงข้อผิดพลาดเดียวกัน ทำได้ดีมาก!
Iulian Onofrei

18
"ข้อผิดพลาด: มีข้อผิดพลาดเกิดขึ้น"จะเป็นประโยชน์มากขึ้น :))
Aviram Netanel

ดูคำเตือนที่ Linker พ่นออกก่อนที่ข้อผิดพลาด มันอาจนำไปสู่การแก้ปัญหาที่ดีขึ้น / เฉพาะเจาะจงมากขึ้น
Pro Q

คำตอบ:


216

นี่คือวิธีแก้ไขปัญหาอย่างถาวรโครงการเขียนทับทั่วไปอาจทำให้เกิดปัญหานี้ลองใช้วิธีนี้

-UPDATE - ข้อผิดพลาดเสียงดังกราว - ข้อผิดพลาด Mach-O Linker

ในหน้าต่างบันทึกข้อผิดพลาดบางกรณีแสดงข้อผิดพลาด. xctest เพื่อแก้ไข

-> เลือกโครงการของคุณ

-> ข้างนี้ (ก่อนแท็บทั่วไป) เลือกไฟล์ projectTest ของคุณจากดรอปดาวน์

-> มีหนึ่งตัวเลือก (เช่น ProjNameTests)

-> ใน Host Application ให้เลือกโครงการของคุณจากดรอปดาวน์เฉพาะเมื่อมันแสดงให้เห็นว่ากำหนดเอง

ทำ!

ป้อนคำอธิบายรูปภาพที่นี่

ลบวิธีเก่าแล้ว


4
ถ้าฉันลบพา ธ การค้นหา Framework ที่ฉันได้รับไม่สามารถหาไฟล์ส่วนหัวได้
Danpe

62
ฉันคิดว่าฉันไม่เข้าใจ ฉันควรทำอย่างไรดี…?
fabian

1
@fabian เพียงข้ามออกมาและพยายามแก้ปัญหาอื่น :-)
Gajendra K ชัวฮาน

4
ช่วยชีวิตคนวันของฉัน นั่งต่อหน้าเจ้านายของฉันต้องแสดงแอปที่ฉันกำลังทำงานให้เขาและฉันได้รับข้อผิดพลาดของลิงเกอร์ ฉันไปแล้วถ้ายังไม่ได้ลงจอดที่นี่: D
Saraz

2
แอปพลิเคชันโฮสต์อยู่ที่ไหนในขั้นตอนสุดท้าย
Kartiikeya

195

ฉันมีปัญหาเดียวกันและปัญหาคือฉันได้นำเข้าไฟล์. m โดยไม่ตั้งใจแทน. h ในไฟล์การใช้งาน - หวังว่าจะช่วยได้


1
เป็นไปไม่ได้ที่จะหาข้อผิดพลาด! เพียงลองทำทุกวิธีแก้ปัญหา
AsifHabib

นี่ไม่ใช่ความจริงฉันได้ลองทำสิ่งเดียวกันในโครงการใหม่และยังคงได้รับข้อผิดพลาดเดียวกัน
Hemang

ไปที่ส่วนการตั้งค่าโครงการและสร้างเฟสตรวจสอบให้แน่ใจว่าคุณไม่มีไฟล์. m ในส่วน "คัดลอกทรัพยากรบันเดิล" แทน "แหล่งรวบรวม" ที่ทำงานให้ฉัน
LuAndre

ไม่สามารถหาวิธีแก้ปัญหาได้ ผมไม่ทราบว่าสิ่งที่ฉันจะทำ ...
มาร์คัส

คุณช่วยชีวิตฉัน. ขอบคุณมาก!
ไอแซค

73

เพิ่งพบปัญหาเดียวกัน

วิธีแก้ปัญหา (สำหรับฉัน) = ตรวจสอบกรอบงานของคุณ

ในกรณีของฉันฉันได้เพิ่มคลาสที่เกี่ยวข้องกับ CoreData โดยไม่มี "CoreData.framework" การเพิ่มมันแก้ไข MACH_O ที่บ่น


6
มันเกิดขึ้นได้เช่นกันเมื่อคุณเชื่อมโยงไลบรารีที่ไม่มีอยู่ใน SDK รุ่นล่าสุดอีกครั้ง สมมติว่าคุณเชื่อมโยงกับ libz.1.2.3 และ sdk รวม 1.2.5 ตรวจสอบกรอบการทำงานของคุณเป็นคำแนะนำที่ดีจริงๆ! ขอบคุณ Dante!
SlowTree

ขอบคุณ SlowTree บันทึกข้อเสนอแนะแก้ไขประสบการณ์ของฉันกับตัวเชื่อมโยงนี้ขัดข้อง libz.1.2.3 ถึง libz.1.2.5;
Tom Pace

2
Cocoapods เชื่อมโยงสองlibPods.aไฟล์ให้ฉัน (ดังนั้นสัญลักษณ์ที่ซ้ำกัน) ขอบคุณ Dante!
Nick Merrill

ใช่. ลบไฟล์. a และเพิ่มอีกครั้งจาก linker มันใช้งานได้!
Balasubramanian

61

เปิดไฟล์. xcworkspace ไม่. xcodeproj ฉันเปิดไฟล์. xcworkspace ซ้ำ ข้อผิดพลาดทั้งหมดของคุณจะหายไป


1
ว้าวนั่นต้องเป็นหนึ่งในข้อความดีบั๊กที่บ้าที่สุด ฉันจะไม่เคยเดาอย่างแท้จริงว่านี่คือเหตุผลตามข้อความที่ให้ไว้
Joseph Casey

1
ทำเคล็ดลับสำหรับฉันเพราะมีห้องสมุดภายนอกที่ไม่รวมอยู่ใน. xcodeproj ต้องทำอย่างไรกับ cocoapods
Sjoerd de Wit

สิ่งนี้ใช้ได้สำหรับฉัน เช่น @SjoerddeWit พูดว่า - การรวม cocoapods จำเป็นต้องเปิด. xcworkspace มากกว่า. xcodeproj
โคดี้ริชมอนด์

บันทึกวันของฉัน! +1
Bruno Monteiro

ผมได้ส่งออกโครงการความสามัคคีให้ Xcode และไม่มีไฟล์ .xcworkspace
Ayush Malviya

36

Re: ปัญหาตามที่ระบุไว้ในชื่อเรื่อง:

ในกรณีที่คนอื่นพลาดชัดเจน ...

ฉันพบข้อผิดพลาดนี้หลังจากติดตั้ง Xcode4 เวอร์ชันใหม่และลากไฟล์ที่มีอยู่ไปยังโครงการใหม่ ฉันไม่พบว่าช่องทำเครื่องหมาย 'เพิ่มไปยังเป้าหมาย' ไม่มีการทำเครื่องหมายในช่องโต้ตอบ 'เลือกตัวเลือกสำหรับการเพิ่มไฟล์:' การแก้ไขการละเว้นของฉันในเป้าหมาย> เฟสการบิลด์> คอมไพล์ซอร์สที่แก้ไขปัญหา


เคล็ดลับนี้ใช้ได้สำหรับฉัน ขอบคุณ ฉันลบไดเรกทอรีรวบรวมทั้งหมดและสร้างโครงการใหม่
Vivek Gyaneshwar

34

เมนู> ผลิตภัณฑ์> ทำความสะอาดนี่คือสิ่งที่ทำให้มันใช้ได้ ฉันไม่แน่ใจเกี่ยวกับคนอื่น ฉันเพิ่มรูปเพื่อแสดง

ป้อนคำอธิบายรูปภาพที่นี่


1
น่ากลัว เท่าที่ฉันจะหาทางออกได้
Vincent van Leeuwen

29

ข้อผิดพลาดที่แปลกประหลาด สำหรับฉันฉันเพิ่งทำความสะอาดและรีสตาร์ท Xcode และปัญหาก็หายไป



24

ไม่มีคำตอบใดที่ช่วยฉันได้ จากนั้นฉันพยายามติดตั้ง Cocoapods ใหม่:

pod deintegrate

pod install

แก้ไขปัญหา!


ฉันไม่แน่ใจว่าการตัดการเชื่อมต่อกับพ็อด & xcode อยู่ที่ไหน แต่บ่อยครั้งที่มันยากที่จะตรวจสอบให้แน่ใจว่าไฟล์พ็อดทำการส่งไปยังโฟลเดอร์ที่ได้รับมา ดูเหมือนว่าจะแก้ไขปัญหานี้ได้ ฉันหวังว่าฉันจะเริ่มได้แค่คำตอบนี้ ..
Jacksonkr

20

ปัญหาคือใน XCode 4 การขึ้นต่อกันไม่ถือว่าการตั้งค่าสถาปัตยกรรมของโครงการหลักอย่างที่เคยทำใน XCode 3 ฉันต้องผ่านการพึ่งพาทั้งหมดของฉันเพื่อตั้งค่าสถาปัตยกรรมที่ถูกต้อง


2
ขอบคุณ! ฉันทำผิดโดยข้อเท็จจริงที่ว่าข้อความแสดงข้อผิดพลาดจากตัวเชื่อมโยงบ่นเกี่ยวกับ "ไม่พบไฟล์" ไม่ใช่ "พบไฟล์ แต่ฉันใช้มันไม่ได้ ... " และเดินผ่านการตั้งค่า xcode เพื่อค้นหาห้องสมุด เส้นทาง แต่สิ่งนี้ใช้ได้สำหรับฉัน และถ้าคุณกระต่ายมีปัญหานี้โพสต์อื่น ๆ นอกจากนี้ยังเกี่ยวข้องกับ: stackoverflow.com/questions/2999844/three20-and-ios-4 นอกจากนี้บล็อกสรุปที่ดีนี้: amirnaor.com/?p=112
Rob

13

ฉันมีเหมือนกันและจัดการเพื่อแก้ไขมัน

ใน Xcode ค่าที่ตั้งแท็บค่าการเปลี่ยนแปลงภายใต้การสร้างสถานที่ Place build products in locations specified by targets""


ขอบคุณ Wolfert ลองแล้วยังมีคำเตือน Apple Mach-O Linker 1250 และยังไม่มีความคืบหน้า คุณทำอย่างอื่นเพื่อแก้ไขปัญหานี้หรือไม่? ไชโย

ขอบคุณ Wolfert! คุณประหยัดเวลาได้มาก
นิล Targe

6
ตัวเลือกไม่สามารถใช้ได้ใน XCode 5.1
Hemang

13

ฉันดิ้นรนกับสิ่งนี้ชั่วระยะเวลาหนึ่งและในกรณีของฉันมันคือการตั้งค่า Build ภายใต้เส้นทางการค้นหาที่เรียกว่า FRAMEWORK_SEARCH_PATHS มันช่วยให้ฉันเลือกปุ่ม "ระดับ" ซึ่งดูเหมือนจะเปรียบเทียบการตั้งค่าโครงการเป้าหมายและ "แก้ไขแล้ว" ของฉัน ฉันเห็นว่าการตั้งค่าเป้าหมายของฉันอย่างใดก็ตามแทนที่ค่าเริ่มต้นของ "$ (สืบทอดมา)" และค่าที่แทนที่คือสิ่งที่ XCode "แก้ไข" การตั้งค่าที่จะ เมื่อฉันลบล้างการแทนที่ซึ่งในกรณีนี้ระบุ 3.2 sdk ข้อผิดพลาด linker หายไป - เช่นเดียวกับที่บางคนเพิ่งปรากฏคำเตือนเกี่ยวกับชั้นเรียนใด ๆ ที่ฉันเรียกว่าวิธีการโพสต์ 4.0

เกี่ยวกับคำเตือนเหล่านั้น - ฉันไม่เคยเห็นมาก่อนเลยฉันจะเพิ่มกรอบข้อความ MessageUI สำหรับการเปลี่ยนแปลงล่าสุด ฉันสงสัย แต่ไม่รู้แน่ชัดว่าเมื่อฉันเพิ่มเฟรมเวิร์กนี้ XCode พยายามทำสิ่งที่ฉลาดกว่าโดยเพิ่มการแทนที่นั้นลงในเป้าหมายของฉัน ฉันไม่ได้ทำมันอย่างชัดเจนในทุกจุด ตัวอย่างเช่นคำเตือนเกี่ยวกับวิธีการ URLByAppendingPathComponent ของ NSURL ซึ่งไม่ปรากฏจนกว่าจะถึง sdk 4.0 ก่อนที่จะเพิ่มกรอบข้อความ MessageUI ฉันไม่เคยได้รับคำเตือนนั้น และตั้งแต่ฉันลบล้างการแทนที่ฉันไม่ได้รับพวกเขาอีกต่อไป



8

การเปลี่ยน "สร้างสถาปัตยกรรมที่แอ็คทีฟเท่านั้น" เป็นใช่ใน CordovaLib.xcodeproj -> การตั้งค่าการสร้างไม่ได้หลอกลวงสำหรับฉัน ก่อนหน้านี้แอปทำงานบนเครื่องจำลอง แต่ไม่ได้อยู่ในอุปกรณ์


7

คุณอาจต้องอัปเดตการตั้งค่าการสร้างของคุณ

ตรวจสอบเวอร์ชันเป้าหมาย iOS และสถาปัตยกรรมตัวประมวลผลเนื่องจากคุณอาจไม่มี SDK เก่าที่มี XCode 4

คุณอาจเห็น« Missing SDK »ในการตั้งค่าการสร้าง เปลี่ยนเป็นสิ่งที่ใช้


นั่นเป็นสิ่งแรกที่ฉันทำเมื่อใดก็ตามที่ฉันอัพเกรด xcode คราวนี้มันไม่ใช่ปัญหา
CodeVomit

7

ฉันมีปัญหาเดียวกัน: เพิ่งลบไฟล์. m โดยไม่ตั้งใจขณะที่. h อยู่ในโครงการ ปัญหาหายไปเมื่อฉันกู้คืนไฟล์. m


6

ตรวจสอบเพื่อให้แน่ใจว่าคุณไม่ได้ระบุพา ธ การค้นหาเฟรมเวิร์กเฉพาะ หากคุณไปที่ข้อมูลเกี่ยวกับเป้าหมายและเพียงแค่ลบรายการพา ธ การค้นหาเฟรมเวิร์กควรใช้ค่าเริ่มต้นสำหรับเวอร์ชันการปรับใช้ที่คุณระบุ


5

ฉันแค่พยายามสร้างcategory classไฟล์และได้รับปัญหาแปลก ๆ นี้และในที่สุดก็ ....

ผิดวิธีในการสร้างหมวดหมู่ระดับที่เป็นสาเหตุของปัญหา:

New File-> Cocoa Touch-> Objective-C classจากนั้นฉันแก้ไขชื่อไฟล์เป็นหมวดหมู่คลาสเช่นชื่อ .. (เช่นOriginalClass_CategoryName.h/mถึงOriginalClass+CategoryName.h/mและยังมีการปรับเปลี่ยนเนื้อหาในไฟล์)

ทางขวาที่นี่:

New File-> Cocoa Touch-> Objective-C categoryและมันจะสร้างไฟล์โดยอัตโนมัติ ( OriginalClass+CategoryName.h/m)

โอ้ฉันช่างโง่เหลือเกิน !!


5

หากคุณกำลังใช้ CoreData และคุณใช้ XCode เพื่อสร้างคลาสย่อย NSManagedObject สำหรับเอนทิตีของคุณตรวจสอบให้แน่ใจว่าคุณสร้างเพียงหนึ่งตัวสำหรับแต่ละเอนทิตี

ปัญหาของฉันคือมันสร้างคลาสย่อย NSManagedObject หลายรายการสำหรับเอนทิตีเดียวกัน (และวางไว้ในโฟลเดอร์อื่น)

ฉันเพิ่งลบพวกเขาทั้งหมดและสร้างคลาสย่อย NSManagedObject อีกครั้ง


5

หากต้องการเพิ่มลงในรายการสิ่งแปลก ๆ ที่แก้ไขปัญหานี้ ...

ฉันมีตัวแปร CGFloat const ในไฟล์ส่วนหัวร่วมเช่นนั้น

const NSInteger  globalInteger1 = 2;
const NSInteger  globalInteger2 = 3;

ช่วงเวลาที่ฉันลบสิ่งเหล่านี้ทั้งหมดได้ดี :)


1
ปัญหา WEIRD ของฉันอยู่ที่ไฟล์. pch หรือ constants.h ฉันได้ประกาศค่าคงที่เป็น NSString * const kInitiaNotification = @ "kInitialNotification"; โดยไม่เอ่ยถึง "คงที่" ในตอนแรก
Mazen Kasser

ฉันมีปัญหาหลังจากเปลี่ยนจากNSString static *key = @"someKey"เป็นconst NSString *key = @"someKey"
TonyTony

5

ฉันมีปัญหาเดียวกันทั้งหมดเพียงเพราะฉันมีค่าคงที่สองค่าเดียวกันในชั้นเรียนที่แตกต่างกัน คุณสามารถมีปัญหานี้ได้หากคุณนำเข้าไฟล์. m ไม่ใช่ไฟล์. h


คุณบันทึกวันของฉัน !!
teck wei

@Teckwei คุณสามารถกดลูกศรขึ้นโหวต: D
Adela Toderici

4

ไม่แน่ใจว่าเกี่ยวข้องหรือไม่ แต่เห็นว่าคุณใช้งานห้องสมุดบางแห่งถึงสามแห่งคุณอาจต้องการตรวจสอบโพสต์นี้บนเว็บไซต์ของพวกเขา: http://three20.info/article/2011-03-10-Xcode4-Support


4

ฉันมีปัญหาเดียวกันและฉันแก้ไขมัน ในกรณีของฉันการตั้งค่า "สถาปัตยกรรม" ทำให้เกิดปัญหา ในไฟล์โครงการของฉันแท็บสร้างการตั้งค่าสถาปัตยกรรมถูกตั้งค่าเป็น armv6 ฉันเปลี่ยนเป็น Standard (armv7) ทำความสะอาดและสร้าง จากนั้นก็ใช้งานได้!


4

ในกรณีของฉันปัญหาคือมีสถาปัตยกรรมที่แตกต่างกันระบุไว้ภายใต้เป้าหมายที่แตกต่างกัน ฉันกำลังสร้างเป้าหมายแอปพลิเคชันของฉันด้วย armv6, armv7 และ cocos2d ด้วย Standard (amrv7) เข้าสู่การตั้งค่าการสร้างและตรวจสอบให้แน่ใจว่าสถาปัตยกรรมของคุณเห็นด้วยกับเป้าหมายทั้งหมด


4

ฉันแก้ไขปัญหานี้แปลกเกินไป!

ไปที่เป้าหมาย > สร้างเฟส > เชื่อมโยงไบนารีกับไลบรารี :

ลบเฟรมเวิร์กทั้งหมดของคุณและเพิ่มอีกครั้ง!

หวังว่ามันจะเหมาะกับคุณ!


วิธีการแก้ปัญหาอันน่ากลัวสวย
SleepsOnNewspapers

มันไม่สามารถตอบได้ ... ไม่ใช่เหตุผลมากนัก
LKM

ฉันตรวจสอบข้อความแสดงข้อผิดพลาดและพบว่าเป็นหนึ่งในเฟรมเวิร์กดังนั้นฉันจึงลบเฟรมเวิร์กนั้นและเพิ่มอีกครั้งไม่ใช่เฟรมเวิร์กทั้งหมด แต่แค่เฟรมนั้น
Oluwatobi Omotayo

4

สำหรับภาษาสวิฟท์ ...

ฉันได้รับข้อผิดพลาดนี้ "ld: ไฟล์เล็กเกินไป (length = 0) .... "

ในกรณีของฉันฉันเพิ่งทำความสะอาดโครงการแล้วสร้างใหม่ ..

ขั้นตอน: -

1) ไปที่โครงการ -> ทำความสะอาด

2) ไปที่โครงการ -> สร้าง

หวังว่านี่จะช่วย ..


ทำงานให้ฉัน เกิดขึ้นเมื่อฉันสลับอุปกรณ์จาก iPhone 6 เป็น iPhone 4S
racl101

ทำงานให้ฉันด้วย ขอบคุณมาก
ลี

4

นี่เป็นเคล็ดลับสำหรับฉัน:

ไปที่

1) ผลิตภัณฑ์> ทำความสะอาด

2) Windows> โครงการ

3) เลือกโครงการของคุณและคลิกที่ " ลบ " ข้อมูลที่ได้รับ

4) ผลิตภัณฑ์> สร้าง


3

ความเป็นไปได้หนึ่งอย่าง: เปิด "การลอกแบบ Dead code" ในการตั้งค่าการสร้าง Xcode 4

ความเป็นไปได้อื่น: อาจเป็นไปได้ว่าคุณเปลี่ยนไปใช้ LLVM สำหรับเฟรมเวิร์กที่เคยใช้ GCC มาก่อน การย้ายกลับไปที่ GCC (หรือ LLVM GCC) อาจกำจัดคำเตือนเหล่านั้น


3

ฉันกำหนดค่าคงที่ใหม่โดยไม่ตั้งใจด้วยชื่อเดียวกันกับค่าคงที่ที่มีอยู่ในไฟล์อื่นและทำให้เกิดข้อผิดพลาดนี้สำหรับฉันโดยใช้ xCode 4.3.1 xCode ไม่ได้บ่น แต่คอมไพเลอร์ไม่ชอบมัน


3

ฉันสามารถแก้ไขข้อผิดพลาดนี้ได้โดยแก้ไข "เส้นทางการค้นหาห้องสมุด"

มันถูกครอบตัดตั้งแต่แรกเพราะฉันย้ายโฟลเดอร์ไปมาสองโฟลเดอร์และท้ายที่สุดก็ให้การตั้งค่าการสร้างของฉันสองเส้นทางการค้นหาที่แตกต่างกันเพราะพวกเขาจะถูกเพิ่มโดยอัตโนมัติในการตั้งค่าการสร้างของคุณเมื่อคุณเชื่อมโยงไลบรารี / กรอบงาน นำออกเสมอ

ดังนั้นหากคุณย้ายไลบรารี / เฟรมเวิร์กที่ลิงก์ไปยังไดเรกทอรีอื่นและลิงก์อีกครั้งคุณจะต้องแก้ไขพา ธ การค้นหาด้วยตนเอง

คุณอาจสามารถหลบสิ่งนี้ได้โดยลบไลบรารี / กรอบงานก่อนที่จะย้าย แต่ฉันไม่ได้ทดสอบสิ่งนั้น

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.