Ich habe ein Problem mit Bibliotheken auf CentOS. Ich bin mir nicht sicher, was falsch ist. Wenn ich versuche, ein Projekt zu machen, bekomme ich diesen Fehler:Linker kann Standard-C-Bibliothek nicht finden
gcc -Wall -Winline -O2 -fPIC -g -D_FILE_OFFSET_BITS=64 -o bzip2 bzip2.o -L. -lbz2
/usr/bin/ld: cannot find -lc
collect2: error: ld returned 1 exit status
ich kann - und habe - einen Symlink machen, die /usr/lib64/libc.so
zu /usr/lib64/libc-2.17.so
verbindet, die vorhanden ist, aber das schafft nur einen weiteren Fehler:
gcc -Wall -Winline -O2 -fPIC -g -D_FILE_OFFSET_BITS=64 -o bzip2 bzip2.o -L. -lbz2
/usr/lib/gcc/x86_64-redhat-linux/4.8.5/crt1.o: In function `_start':
(.text+0x12): undefined reference to `__libc_csu_fini'
/usr/lib/gcc/x86_64-redhat-linux/4.8.5/crt1.o: In function `_start':
(.text+0x19): undefined reference to `__libc_csu_init'
collect2: error: ld returned 1 exit status
Offensichtlich ist die Toolchain kaputt. Wie kann ich es richtig beheben? Symlinks macht offensichtlich nichts Fixierung ...
Ich versuchte auch ganze Entwicklung mit Toolchain yum group remove "Development Tools"
dann yum group install "Development Tools"
Sollten Sie nicht mit 'g ++' kompilieren? – Rakete1111
@ Rakete1111 Nein, es ist eine C-Bibliothek. Das Makefile gehört nicht mir. Das Problem ist, dass die ganze gcc toolchain kaputt ist. Ich habe es ohne Erfolg neu installiert. –
@ TomášZato Denken Sie daran, dass die Reihenfolge wichtig ist, wenn Sie die Bibliotheken angeben. –