Iné

Mac Ako sa vyhnúť „nedefinovaným symbolom pre architektúru x86_64“?

mikezang

do
Pôvodný plagát
22. mája 2010
Tokio, Japonsko
  • 25. júla 2015
Pokúsil som sa vytvoriť krížovú kompiláciu pre moje staré Lego RCX, používam GCC 3.3.6 a NEWLIB 1.13.
Kód: |_+_|
Keď to urobím, nakoniec som dostal chybu, ako je uvedené nižšie, čo môžem urobiť?
Kód: |_+_|

Madd Zdravý

do
8. novembra 2010


Utah
  • 2. augusta 2015
Čo sa deje, je to, že linker OS X nemôže nájsť špecifikovanú funkciu v ničom, čo sa pokúša prepojiť. Dôvodom môže byť chýbajúce makro preprocesora alebo nie je prepojený skompilovaný kód a/alebo knižnica.

mikezang

do
Pôvodný plagát
22. mája 2010
Tokio, Japonsko
  • 4. august 2015
Madd the Sane povedal: Čo sa deje, je to, že linker OS X nemôže nájsť špecifikovanú funkciu v ničom, čo sa pokúša prepojiť. Dôvodom môže byť chýbajúce makro preprocesora alebo nie je prepojený skompilovaný kód a/alebo knižnica.
Ďakujem za tvoju správu! môžete mi povedať, ako vyriešiť tento problém? C

cqexbesd

4. júna 2009
Nemecko
  • 4. august 2015
mikezang povedal: Ďakujeme za vašu správu! môžete mi povedať, ako vyriešiť tento problém?

Tu len hádam, ale myslím, že možno budete musieť mať nainštalovaný gperf. Potom začnite budovať od začiatku - t.j. urobte distclean alebo podobne - alebo jednoducho odstráňte svoj adresár a znova rozbaľte súbor tar.

Cromulent

2. októbra 2006
Krajina nádeje a slávy
  • 4. august 2015
mikezang povedal: Ďakujeme za vašu správu! môžete mi povedať, ako vyriešiť tento problém?

Zdá sa, že používate nesprávny GCC.

Buď zadajte úplnú cestu k GCC 3.3.6, alebo ju pridajte do cesty s iným názvom ako GCC (pretože Apple už poskytuje príkaz GCC, ktorý náhodou spustí clang). To je dôvod, prečo máte nasledujúcu chybu:

ld: symboly sa nenašli pre architektúru x86_64

clang: error: príkaz linker zlyhal s kódom ukončenia 1 (na zobrazenie vyvolania použite -v)

V skutočnosti používate Clang, ktorý sa kompiluje na x86_64. Musíte spustiť GCC, ktorý ste skompilovali. Normálne pri kompilácii GCC ako krížového kompilátora mu dáte iný názov ako GCC (čo je jedna z možností konfiguračného skriptu pre GCC pri jeho kompilácii), aby ste mohli rozlíšiť rozdiel medzi GCC poskytovaným systémom a vašim vlastným krížom GCC. kompilátor.

mikezang

do
Pôvodný plagát
22. mája 2010
Tokio, Japonsko
  • 4. august 2015
cqexbesd povedal: Tu len hádam, ale myslím, že možno budete musieť mať nainštalovaný gperf. Potom začnite budovať od začiatku - t.j. urobte distclean alebo podobne - alebo jednoducho odstráňte svoj adresár a znova rozbaľte súbor tar.
skvelé! Včera večer som našla túto stránku http://stackoverflow.com/questions/3040801/error-compiling-gcc-undefined-reference-to-libc-name-p , chyba je preč, keď ju budete nasledovať.