ఇతర

Mac 'ఆర్కిటెక్చర్ x86_64 కోసం నిర్వచించని చిహ్నాలను' ఎలా నివారించాలి?

మైకేజాంగ్

కు
ఒరిజినల్ పోస్టర్
మే 22, 2010
టోక్యో, జపాన్
  • జూలై 25, 2015
నేను నా పాత Lego RCX కోసం క్రాస్ కంపైల్‌ని రూపొందించడానికి ప్రయత్నించాను, నేను GCC 3.3.6 మరియు NEWLIB 1.13ని ఉపయోగిస్తాను.
కోడ్: |_+_|
నేను దీన్ని చేసినప్పుడు, చివరగా నాకు ఈ క్రింది విధంగా లోపం వచ్చింది, నేను ఏమి చేయగలను?
కోడ్: |_+_|

మాడ్ ది సాన్

కు
నవంబర్ 8, 2010


ఉటా
  • ఆగస్ట్ 2, 2015
ఏమి జరుగుతోందంటే, OS X యొక్క లింకర్ అది లింక్ చేయడానికి ప్రయత్నిస్తున్న దేనిలోనూ పేర్కొన్న ఫంక్షన్‌ను కనుగొనలేకపోయింది. దీనికి కారణం తప్పిపోయిన ప్రీప్రాసెసర్ మాక్రో కావచ్చు లేదా కంపైల్ చేసిన కోడ్ మరియు/లేదా లైబ్రరీ లింక్ చేయబడకపోవడం కావచ్చు.

మైకేజాంగ్

కు
ఒరిజినల్ పోస్టర్
మే 22, 2010
టోక్యో, జపాన్
  • ఆగస్ట్ 4, 2015
Madd the Sane ఇలా అన్నారు: OS X యొక్క లింకర్ లింక్ చేయడానికి ప్రయత్నిస్తున్న దేనిలోనైనా పేర్కొన్న ఫంక్షన్‌ను కనుగొనలేకపోయింది. దీనికి కారణం తప్పిపోయిన ప్రీప్రాసెసర్ మాక్రో కావచ్చు లేదా కంపైల్ చేసిన కోడ్ మరియు/లేదా లైబ్రరీ లింక్ చేయబడకపోవడం కావచ్చు.
మీ సందేశానికి ధన్యవాదాలు! ఈ సమస్యను ఎలా పరిష్కరించాలో మీరు నాకు చెప్పగలరా? సి

cqexbesd

జూన్ 4, 2009
జర్మనీ
  • ఆగస్ట్ 4, 2015
mikezang చెప్పారు: మీ సందేశానికి ధన్యవాదాలు! ఈ సమస్యను ఎలా పరిష్కరించాలో మీరు నాకు చెప్పగలరా?

నేను ఇక్కడ ఊహిస్తున్నాను కానీ మీరు gperfని ఇన్‌స్టాల్ చేసి ఉండవలసి ఉంటుందని నేను భావిస్తున్నాను. ఆపై మొదటి నుండి నిర్మాణాన్ని ప్రారంభించండి - అనగా డిస్ట్‌క్లీన్ లేదా ఇలాంటివి చేయండి - లేదా మీ డైరెక్టరీని తొలగించి, టార్ ఫైల్‌ను మళ్లీ విస్తరించండి.

క్రోమ్యులెంట్

అక్టోబర్ 2, 2006
ది ల్యాండ్ ఆఫ్ హోప్ అండ్ గ్లోరీ
  • ఆగస్ట్ 4, 2015
mikezang చెప్పారు: మీ సందేశానికి ధన్యవాదాలు! ఈ సమస్యను ఎలా పరిష్కరించాలో మీరు నాకు చెప్పగలరా?

మీరు తప్పు GCCని ఉపయోగిస్తున్నట్లు కనిపిస్తోంది.

GCC 3.3.6కి పూర్తి పాత్‌ని టైప్ చేయండి లేదా GCC కాకుండా వేరే పేరుతో పాత్‌కి జోడించండి (యాపిల్ ఇప్పటికే GCC కమాండ్‌ను అందిస్తుంది, ఇది వాస్తవానికి గణగణమని ద్వని చేయడాన్ని అమలు చేస్తుంది). అందుకే మీకు ఈ క్రింది లోపం ఉంది:

ld: ఆర్కిటెక్చర్ x86_64 కోసం గుర్తు(లు) కనుగొనబడలేదు

క్లాంగ్: లోపం: నిష్క్రమణ కోడ్ 1తో లింకర్ కమాండ్ విఫలమైంది (ఆవాహనను చూడటానికి -v ఉపయోగించండి)

మీరు వాస్తవానికి x86_64కి కంపైల్ చేసే క్లాంగ్‌ని అమలు చేస్తున్నారు. మీరు కంపైల్ చేసిన GCCని అమలు చేయాలి. సాధారణంగా GCCని క్రాస్ కంపైలర్‌గా కంపైల్ చేస్తున్నప్పుడు మీరు దానికి GCC కాకుండా వేరే పేరు ఇస్తారు (ఇది కంపైల్ చేసేటప్పుడు GCC కోసం కాన్ఫిగర్ చేసే స్క్రిప్ట్ ఎంపికలలో ఒకటి) తద్వారా మీరు సిస్టమ్ అందించిన GCC మరియు మీ స్వంత GCC క్రాస్ మధ్య వ్యత్యాసాన్ని తెలియజేయగలరు. కంపైలర్.

మైకేజాంగ్

కు
ఒరిజినల్ పోస్టర్
మే 22, 2010
టోక్యో, జపాన్
  • ఆగస్ట్ 4, 2015
cqexbesd ఇలా అన్నారు: నేను ఇక్కడ ఊహిస్తున్నాను కానీ మీరు gperfని ఇన్‌స్టాల్ చేయాల్సి ఉంటుందని నేను భావిస్తున్నాను. ఆపై మొదటి నుండి నిర్మాణాన్ని ప్రారంభించండి - అనగా డిస్ట్‌క్లీన్ లేదా ఇలాంటివి చేయండి - లేదా మీ డైరెక్టరీని తొలగించి, టార్ ఫైల్‌ను మళ్లీ విస్తరించండి.
గొప్ప! గత రాత్రి నేను ఈ పేజీని కనుగొన్నాను http://stackoverflow.com/questions/3040801/error-compiling-gcc-undefined-reference-to-libc-name-p , దాన్ని అనుసరించిన తర్వాత లోపం పోయింది.