esecuzione Ubuntu 10,04Segfault da ld-linux nella mia build di glibc
$ uname -a
Linux minion 2.6.32-36-generic-pae #79-Ubuntu SMP Tue Nov 8 23:25:26 UTC 2011 i686 GNU/Linux
Scaricato l'origine e ha fatto la seguente:
CFLAGS="-O2 -U_FORTIFY_SOURCE -fno-stack-protector" '/home/user/Desktop/eglibc-2.11.1/configure' --prefix='/home/user/Desktop/eglibc_pristinebuild'
make -j4
export LD_LIBRARY_PATH=/lib/tls/i686/cmov:/lib:/usr/lib
Questo funziona:
$ ./elf/ld-linux.so.2 /bin/ls /usr
bin games include lib lib64 local sbin share src
questo viene a mancare :
$ ./elf/ld-linux.so.2 /bin/true
Segmentation fault
Ma questo funziona:
/lib/ld-linux.so.2 /bin/true
False
, grep
e cat
e tutto il resto che ho provato in /bin
segfault nello stesso modo. C'è un problema con la fonte? Sto compilando in modo errato?
Inoltre, ho notato che ho scaricato la versione corretta (leggermente più recente) per il raspberry pi (ARM), lo ho compilato e non ha segoults.
Questo funziona perfettamente, ma perché ls funziona? Anch'essa dipende molto dalla libc, giusto? – user2856949
@ user2856949 "perché funziona?": Entrambi './Libc.so.6' e'./Elf/ld-linux.so.2' provengono dalla stessa build (* your * build), quindi funzionano insieme bene. –
Grazie, ma stavo chiedendo perché il binario '/ bin/ls' funzioni. – user2856949