Ecco cosa farei:eseguire ldd /usr/bin/Xorg
Dovresti ottenere una riga simile a questa:
libz.so.1 => /usr/lib/libz.so.1 (0xb7357000)
Se ldd
afferma di non poter risolvere quale file libz.so.1
è presente, quindi disinstalla e reinstalla zlib
:
pacman -R -f zlib
pacman -S zlib
Se ldd
può trovare un libz.so.1
specifico , quindi controlla se quel file costituisce un collegamento simbolico interrotto:
ls -l /usr/lib/libz.so.1
(O qualunque ldd
ti ho detto che libz.so.1
si risolve in).
Sulle mie scatole Arch, /usr/lib/libz.so.1
è un collegamento simbolico di libz.so.1.2.6
. Se /usr/lib/libz.so.1
link a qualche posto strano, come una home directory, rintraccia il motivo - questo non dovrebbe accadere.
Assicurati che qualsiasi file con ldd
risolve libz.so.1
esiste realmente e ha dei contenuti. Ho capito:
% file libz.so.1.2.6
libz.so.1.2.6: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), dynamically linked, BuildID[sha1]=0xb32fb568a025a99ed67220243b487b93ae8ef948, stripped
Se il collegamento esiste, ma il collegamento a libz.so.1.2.6
non esiste, forse puoi fare i due pacman
sequenza di comandi sopra e recuperare tutto. Immagino che sconsiglierei di fare solo i due pacman
comandi, finché non capisci cosa sta succedendo. Qualcosa deve essere cambiato, a meno che questa non sia una nuova installazione, e in qualche modo il zlib
pacchetto non è stato installato.
All'esecuzione di startx
nel terminale, ho ricevuto un messaggio di errore identico. L'ho risolto con pacman -Sy zlib
, che ha aggiornato il pacchetto zlib. Questo l'ha risolto per me. Tuttavia, sono molto nuovo nell'archiviazione, quindi questa potrebbe non essere la soluzione migliore.