2012-07-30 10 views
11
ld: duplicate symbol _velocityX in \ 
/Users/Student/Library/Developer/Xcode/DerivedData/finalproject-ffzevekmatxvhrgisgeleoijyllr/Build/Intermediates/finalproject.build/Debug-iphonesimulator/finalproject.build/Objects-normal/i386/Level2ViewController.o \ 
and \ 
/Users/Student/Library/Developer/Xcode/DerivedData/finalproject-ffzevekmatxvhrgisgeleoijyllr/Build/Intermediates/finalproject.build/Debug-iphonesimulator/finalproject.build/Objects-normal/i386/Level1ViewController.o \ 
for architecture i386 
clang: error: linker command failed with exit code 1 (use -v to see invocation) 

अद्यतन: पठनीयतालिंकर कमान से बाहर निकलें कोड 1 के साथ विफल: नकल प्रतीक

के लिए जोड़ा \ + नई पंक्तियां मैं कोई सुराग नहीं क्या अपने प्रोजेक्ट के साथ गलत है, किसी को भी मदद कर सकते हैं?

+1

खैर:

#import "Menu.h" const int IPHONE4 = 480; 

मैं अपने Menu.m बदल : लिंकर शिकायत करता है कि प्रतीक "_velocityX" को दो ऑब्जेक्ट्स में परिभाषित किया गया है: ".../ऑब्जेक्ट्स-सामान्य/i386/Level2ViewController.o" और ".../ऑब्जेक्ट्स-सामान्य/i386/Level1ViewController। ओ "शायद आपने लिंकर-आमंत्रण पर ऑब्जेक्ट को दो बार निर्दिष्ट किया है? या आपने एक सी फ़ाइल शामिल की है? या आपके पास घूमने वाली पुरानी वस्तुएं हैं? – wildplasser

उत्तर

1

आप शायद दोनों Level1ViewController.c और Level2ViewController.c, से शामिल एक हेडर फाइल में double _velocityX है जब हैडर extern double _velocityX, और ठीक एक.c फ़ाइलों की होनी चाहिए double _velocityX होना चाहिए। (_velocityX के प्रकार का मानना ​​double है, जो उचित लग रहा था, और यह भी मानते हुए कि यह सी या सी ++ है और फोरट्रान या कुछ नहीं है)।

22

मुझे एक ही समस्या थी। लेकिन यह मेरी गलती थी। :)। आपने #import file.h के बजाय #import file.m लिखा होगा। तो संकलन संसाधन प्रतीक फ़ाइल डुप्लिकेट करेगा। - यही वह है! ^^ इसे देखने के लिए, आप उस त्रुटि फ़ाइल को हटाते हैं, बिल्ड करें -> त्रुटि पंक्ति दिखाएं -> फिर इसे दोबारा दोहराएं।

+1

हाहा ... कैसे मूर्खतापूर्ण :) इसके लिए धन्यवाद। मैंने कभी इस टाइपो को नहीं देखा होगा। – d2burke

+1

@ बाओ आप इसे नाखून! –

+1

यह मेरी समस्या भी थी। बहुत बहुत धन्यवाद। – Ali

1

मैं अपने ऐप में कुछ ढांचे को एकीकृत करने की कोशिश करते समय भी यही त्रुटि में भाग गया।

सबसे पहले मैं स्पैरो - एक ग्राफिक्स लाइब्रेरी का उपयोग कर रहा था, और डिफ़ॉल्ट रूप से मेरे पास एक मुख्य.एम फ़ाइल थी, जब तक मैंने पार्स को एकीकृत करने की कोशिश नहीं की, तब तक चीजें ठीक थीं जो फेसबुकएसडीके पर निर्भर थीं। फेसबुकएसडीके फ़ोल्डर्स के भीतर एक नमूना ऐप है जिसे स्क्रैपिप्टियस कहा जाता है, साथ ही साथ मेरी समस्या का स्रोत भी था। मैंने नमूना ऐप्स निर्देशिका और सबकुछ ठीक से बनाया है।

2

मुझे यह वही त्रुटि थी, ऐसा इसलिए था क्योंकि मैंने दो अलग-अलग फ़ाइलों में एक ही नाम के साथ निरंतर परिभाषित किया था। एक बार मैंने उनमें से एक में नाम बदल दिया, यह संकलित।

मेरी ViewController.m में उदाहरण के लिए मैं था:

#import "ViewController.h" 
const int IPHONE4 = 480; 

और मेरे Menu.m में:

#import "Menu.h" 
const int IPHONE4H = 480; 
संबंधित मुद्दे