Altres

Mac Com evitar 'Símbols no definits per a l'arquitectura x86_64'?

mikezang

a
Cartell original
22 de maig de 2010
Tòquio, Japó
  • Jul 25, 2015
Vaig intentar crear una compilació creuada per al meu antic Lego RCX, faig servir GCC 3.3.6 i NEWLIB 1.13.
Codi: |_+_|
Quan ho faig, per fi he rebut un error com a continuació, què puc fer?
Codi: |_+_|

Madd the Sane

a
8 de novembre de 2010


Utah
  • 2 d'agost de 2015
El que està passant és que l'enllaçador d'OS X no pot trobar la funció especificada en res que estigui intentant enllaçar. El motiu d'això podria ser una macro del preprocessador que falta, o el codi compilat i/o la biblioteca no s'està enllaçant.

mikezang

a
Cartell original
22 de maig de 2010
Tòquio, Japó
  • 4 d'agost de 2015
Madd the Sane va dir: El que està passant és que l'enllaçador d'OS X no pot trobar la funció especificada en res que estigui intentant enllaçar. El motiu d'això podria ser una macro del preprocessador que falta, o el codi compilat i/o la biblioteca no s'està enllaçant.
Gràcies pel teu missatge! em pots dir com resoldre aquest problema? C

cqexbesd

4 de juny de 2009
Alemanya
  • 4 d'agost de 2015
mikezang va dir: Gràcies pel teu missatge! em pots dir com resoldre aquest problema?

Només suposo aquí, però crec que potser haureu de tenir instal·lat gperf. A continuació, comenceu a construir des de zero, és a dir, feu un distclean o similar, o simplement suprimiu el vostre directori i torneu a expandir el fitxer tar.

Cromulent

Oct 2, 2006
La terra de l'esperança i la glòria
  • 4 d'agost de 2015
mikezang va dir: Gràcies pel teu missatge! em pots dir com resoldre aquest problema?

Sembla que estàs utilitzant el GCC incorrecte.

Escriviu el camí complet a GCC 3.3.6 o afegiu-lo al camí amb un nom diferent del GCC (perquè Apple ja proporciona una ordre GCC que realment executa clang). És per això que teniu el següent error:

ld: no s'han trobat símbols per a l'arquitectura x86_64

clang: error: l'ordre de l'enllaçador ha fallat amb el codi de sortida 1 (utilitza -v per veure la invocació)

En realitat esteu executant Clang que es compila a x86_64. Heu d'executar el GCC que heu compilat. Normalment, quan compileu GCC com a compilador creuat, li doneu un nom diferent al de GCC (que és una de les opcions de configuració de l'script per a GCC quan el compileu) de manera que pugueu distingir entre el GCC proporcionat pel sistema i la vostra pròpia creu de GCC. compilador.

mikezang

a
Cartell original
22 de maig de 2010
Tòquio, Japó
  • 4 d'agost de 2015
cqexbesd va dir: Només suposo aquí, però crec que potser haureu d'instal·lar gperf. A continuació, comenceu a construir des de zero, és a dir, feu un distclean o similar, o simplement suprimiu el vostre directori i torneu a expandir el fitxer tar.
Genial! Ahir a la nit vaig trobar aquesta pàgina http://stackoverflow.com/questions/3040801/error-compiling-gcc-undefined-reference-to-libc-name-p , l'error ha desaparegut després de seguir-lo.