2017-11-16 14 views
0

Ich habe drei C-Dateien ac, bc und dc, Kompilieren wie folgt:versteckte Symbol `__aeabi_uidivmod‘ Endglied fehlgeschlagen: Bad Wert

arm-linux-gnueabihf-gcc -c -fPIC -Iab/inc/ -I../inc ab/src/a.c -oa.o 

arm-linux-gnueabihf-gcc -c -fPIC -Iab/inc/ -I../inc ab/src/b.c -ob.o 

arm-linux-gnueabihf-ld -fPIC -shared a.o b.o -olibab.so 

arm-linux-gnueabihf-gcc -pthread -Iab/inc/ -I../inc/ -L. ab/test/src/d.c -L. -lab 

Wenn nicht Cross-Compiler Ich habe nicht ein Fehler oder eine Warnung, aber im Cross-Compiler ich Fehler:

Fehler wie unten

arm-linux-gnueabihf/bin/ld: a.out: hidden symbol `__aeabi_uidivmod' in gcc-linaro-arm-linux-gnueabihf-4.8-2014.04_linux/bin/../lib/gcc/arm-linux-gnueabihf/4.8.3/libgcc.a(_udivsi3.o) is referenced by DSO 
arm-linux-gnueabihf/bin/ld: final link failed: Bad value 
collect2: error: ld returned 1 exit status 

Jede Hilfe wird geschätzt. Vielen Dank!

Antwort

0

Problem ist wegen der Verknüpfung mit Linker (ld), Wenn ich über gcc verlinke dann wird dieser Fehler nicht gesehen.

Linker verbindet sich nicht mit libgcc.a, aufgrund dessen dieser Fehler gesehen wird, war dies die Antwort von Linaro IRC-Kanal

Verwandte Themen