अन्य

मैक 'वास्तुकला x86_64 के लिए अपरिभाषित प्रतीकों' से कैसे बचें?

माइकज़ांग

प्रति
मूल पोस्टर
22 मई 2010
टोक्यो, जापान
  • जुलाई 25, 2015
मैंने अपने पुराने लेगो आरसीएक्स के लिए एक क्रॉस संकलन बनाने की कोशिश की, मैं जीसीसी 3.3.6 और न्यूएलआईबी 1.13 का उपयोग करता हूं।
कोड: |_+_|
जब मैं इसे बनाता हूं, तो अंत में मुझे नीचे दी गई त्रुटि मिली, मैं क्या कर सकता हूं?
कोड: |_+_|

Madd the Sane

प्रति
नवंबर 8, 2010


यूटा
  • अगस्त 2, 2015
क्या हो रहा है कि ओएस एक्स के लिंकर को किसी भी चीज़ में निर्दिष्ट फ़ंक्शन नहीं मिल रहा है जिसे वह लिंक करने का प्रयास कर रहा है। इसका कारण अनुपलब्ध प्रीप्रोसेसर मैक्रो हो सकता है, या संकलित कोड और/या लाइब्रेरी को लिंक नहीं किया जा रहा है।

माइकज़ांग

प्रति
मूल पोस्टर
22 मई 2010
टोक्यो, जापान
  • अगस्त 4, 2015
मैड द सेन ने कहा: क्या हो रहा है कि ओएस एक्स के लिंकर को किसी भी चीज़ में निर्दिष्ट फ़ंक्शन नहीं मिल रहा है जिसे वह लिंक करने का प्रयास कर रहा है। इसका कारण अनुपलब्ध प्रीप्रोसेसर मैक्रो हो सकता है, या संकलित कोड और/या लाइब्रेरी को लिंक नहीं किया जा रहा है।
आपके संदेश के लिए धन्यवाद! क्या आप मुझे बता सकते हैं कि इस समस्या को कैसे हल किया जाए? सी

cqexbesd

जून 4, 2009
जर्मनी
  • अगस्त 4, 2015
माइकजांग ने कहा: आपके संदेश के लिए धन्यवाद! क्या आप मुझे बता सकते हैं कि इस समस्या को कैसे हल किया जाए?

मैं यहां केवल अनुमान लगा रहा हूं लेकिन मुझे लगता है कि आपको gperf स्थापित करने की आवश्यकता हो सकती है। फिर खरोंच से निर्माण शुरू करें - यानी डिस्टक्लीन या समान बनाएं - या बस अपनी निर्देशिका हटाएं और टार फ़ाइल को फिर से विस्तारित करें।

क्रॉमुलेंट

2 अक्टूबर 2006
आशा और महिमा की भूमि
  • अगस्त 4, 2015
माइकजांग ने कहा: आपके संदेश के लिए धन्यवाद! क्या आप मुझे बता सकते हैं कि इस समस्या को कैसे हल किया जाए?

ऐसा लगता है कि आप गलत GCC का उपयोग कर रहे हैं।

या तो जीसीसी 3.3.6 के लिए पूर्ण पथ टाइप करें या इसे जीसीसी से भिन्न नाम के साथ पथ में जोड़ें (क्योंकि ऐप्पल पहले से ही एक जीसीसी कमांड प्रदान करता है जो वास्तव में क्लैंग चलाने के लिए होता है)। यही कारण है कि आपको निम्न त्रुटि है:

एलडी: आर्किटेक्चर के लिए प्रतीक नहीं मिला x86_64

बजना: त्रुटि: लिंकर कमांड एक्ज़िट कोड 1 के साथ विफल रहा (आमंत्रण देखने के लिए -v का उपयोग करें)

आप वास्तव में क्लैंग चला रहे हैं जो x86_64 को संकलित करता है। आपको संकलित जीसीसी चलाने की जरूरत है। आम तौर पर जीसीसी को क्रॉस कंपाइलर के रूप में संकलित करते समय आप इसे जीसीसी से अलग नाम देते हैं (जो इसे संकलित करते समय जीसीसी के लिए कॉन्फ़िगर स्क्रिप्ट विकल्पों में से एक है) ताकि आप सिस्टम द्वारा प्रदान किए गए जीसीसी और अपने स्वयं के जीसीसी क्रॉस के बीच अंतर बता सकें। संकलक।

माइकज़ांग

प्रति
मूल पोस्टर
22 मई 2010
टोक्यो, जापान
  • अगस्त 4, 2015
cqexbesd ने कहा: मैं यहाँ केवल अनुमान लगा रहा हूँ लेकिन मुझे लगता है कि आपको gperf स्थापित करने की आवश्यकता हो सकती है। फिर खरोंच से निर्माण शुरू करें - यानी डिस्टक्लीन या समान बनाएं - या बस अपनी निर्देशिका हटाएं और टार फ़ाइल को फिर से विस्तारित करें।
महान! कल रात मुझे यह पेज मिला http://stackoverflow.com/questions/3040801/error-compiling-gcc-undefined-reference-to-libc-name-p , इसका अनुसरण करने के बाद त्रुटि दूर हो गई है।