Errore durante il caricamento di libGL.so.1

47

Durante il tentativo di eseguire vari software (in particolare Steam e Yenka), ho riscontrato un errore simile a questo: error while loading shared libraries: libGL.so.1: cannot open shared object file: No such file or directory

Gestisco un sistema a 64 bit, con una scheda NVidia Optimus (I dual boot per alcuni software Windows solo che richiedono una scheda grafica dedicata). Ho installato bumblebee e sto utilizzando il driver nvidia-current, piuttosto quello scaricato da NVidia, come raccomandato.

La libreria (libGL.so.1) non è presente nella directory principale di /usr/lib , tuttavia è presente in /usr/lib32/nvidia-current , come collegamento software a /usr/lib32/nvidia-current/libGL.so.304.64 .

Una sezione dell'output da ldconfig -p:

libGL.so.1 (libc6,x86-64, OS ABI: Linux 2.4.20) => /usr/lib/x86_64-linux-gnu/mesa/libGL.so.1
libGL.so (libc6,x86-64, OS ABI: Linux 2.4.20) => /usr/lib/x86_64-linux-gnu/libGL.so
libGL.so (libc6,x86-64, OS ABI: Linux 2.4.20) => /usr/lib/x86_64-linux-gnu/mesa/libGL.so

Ovviamente viene caricata una libreria con quel nome, ma si trova in /usr/lib/x86_64-linux-gnu , tuttavia il software installato non sembra in grado di "vederlo". Per Steam, eseguirlo con optirun fa sì che funzioni, ma questo non è il caso di Yenka. Presumo che optirun causi l'utilizzo della libreria memorizzata in /usr/lib32/nvidia-current , che consente a Steam di funzionare, quindi non riesco a capire perché Yenka non verrà eseguito.

Qualcuno può spiegare perché il software non può vedere la normale libreria di mesa, e perché Yenka si rifiuta di girare con la libreria di nvidia-corrente?

    
posta p0llard 18.02.2013 - 20:52

8 risposte

39

Con i driver nvidia installati, skype sta cercando una lib i386 fornita dal pacchetto nvidia. Dal momento che non esiste, va bene usare l'i386 libGL.so.1 fornito da mesa.

Testato su (ubuntu-gnome raring, usando nvidia-325) e (ubuntu-gnome saucy, usando nvidia-319) siamo stati in grado di risolvere il problema in base a quanto segue:

update-alternatives --display i386-linux-gnu_gl_conf

Questo ti mostrerà quali sono le opzioni disponibili.

i386-linux-gnu_gl_conf - auto mode
  link currently points to /usr/lib/nvidia-325/alt_ld.so.conf
/usr/lib/i386-linux-gnu/mesa/ld.so.conf - priority 500
  slave i386-linux-gnu_xorg_extra_modules: /usr/lib/i386-linux-gnu/xorg/x11-extra-modules
/usr/lib/nvidia-325/alt_ld.so.conf - priority 8602
Current 'best' version is '/usr/lib/nvidia-325/alt_ld.so.conf'

quindi, fai quanto segue:

sudo update-alternatives --config i386-linux-gnu_gl_conf

quindi seleziona l'alternativa migliore (ho selezionato i386-linux-gnu / mesa / ld.so.conf): Nell'output seguente ci sono due alternative per l'alternativa i386-linux-gnu_gl_conf (che fornisce /etc/ld.so.conf.d/i386-linux-gnu_GL.conf).

  Selection    Path                                     Priority   Status
------------------------------------------------------------
* 0            /usr/lib/nvidia-325/alt_ld.so.conf        8602      auto mode
  1            /usr/lib/i386-linux-gnu/mesa/ld.so.conf   500       manual mode
  2            /usr/lib/nvidia-325/alt_ld.so.conf        8602      manual mode

Press enter to keep the current choice[*], or type selection number: 1
update-alternatives: using /usr/lib/i386-linux-gnu/mesa/ld.so.conf to provide /etc/ld.so.conf.d/i386-linux-gnu_GL.conf (i386-linux-gnu_gl_conf) in manual mode

Dopo averlo completato, prova a eseguire:

sudo ldconfig

e poi hai finito.

    
risposta data eurythmia 20.07.2013 - 22:10
51
  

Sto avendo lo stesso problema dopo aver installato skype ... quindi puoi fare entrambe le cose per correggere questo errore ..

Il primo è eseguire l'applicazione seguendo il comando ... per esempio sto usando skype ..

LD_PRELOAD=/usr/lib/i386-linux-gnu/mesa/libGL.so.1 skype

S O U R C E

Secondo ciò che ho fatto

sudo nano /etc/ld.so.conf.d/skype.conf

e aggiungi la seguente riga in esso

/usr/lib/i386-linux-gnu/mesa/

salva & amp; uscita

e infine esegui

sudo ldconfig -v

spero che questo risolva il tuo errore libGL.so.1 così come è successo a mio

Puoi anche trovare libGL.so.1

   find / -name libGL.so.1
    
risposta data Qasim 21.03.2013 - 05:17
12

Le correzioni qui funzioneranno, ma ce n'è una più semplice.

Se skype non funziona ma optirun skype funziona, puoi correggerlo con:

sudo apt-get install bumblebee-nvidia --reinstall

(Le persone che usano Bumblebee con le schede AMD potrebbero dover eseguire la reinstallazione equivalente).

Bumblebee causa entrambe e risolve questo problema, ma la correzione si applica al momento dell'installazione, quando rende disponibili le librerie libGL alla scheda integrata e la scheda più potente. Questo non succederà se queste librerie non fossero già installate quando hai installato Bumblebee, quindi necessiterai di una reinstallazione. Non dovrebbe nemmeno influire sulla configurazione del calabrone, anche se ovviamente vale la pena controllare dopo averlo fatto.

    
risposta data Jon Hanna 27.04.2014 - 14:41
1

Non sono sicuro se questo ti aiuterà a chiarire o no, ma ho avuto lo stesso problema con skype e libGL.so.1. Anche in esecuzione 13.04 con una scheda optimus e bumblebee.

Ho ricevuto il problema con skype senza optirun, ma ha funzionato correttamente. Ho appena cambiato il file desktop per funzionare con optirun ogni volta e voilà. fisso!

    
risposta data user191532 10.09.2013 - 00:54
1

Ho avuto un problema simile e ho risolto installando librerie a 32 bit sul mio sistema a 64 bit: apt-get install ia32-libs

    
risposta data Matt 21.12.2013 - 04:53
1

Modifica la voce del desktop:

sudo nano /usr/share/applications/skype.desktop

Cambia l'Exec in:

Exec=env PULSE_LATENCY_MSEC=60 LD_PRELOAD=/usr/lib/i386-linux-gnu/mesa/libGL.so.1 skype %U

Questo funziona:

LD_PRELOAD=/usr/lib/i386-linux-gnu/mesa/libGL.so.1

prima di eseguire skype quando lo si avvia con la voce di avvio / desktop.

Deve funzionare correttamente dopo che è stato avviato utilizzando l'avvio dell'applicazione.

    
risposta data hazmat 17.12.2014 - 19:20
0

Scarica l'ultima versione dalla pagina ufficiale del vapore, poi lascia scaricare ciò di cui ha bisogno dal terminale (se necessario). di aggiungere bumblebee ppa se non l'hai già fatto.

sudo add-apt-repository ppa:bumblebee/stable

aggiornalo con questo comando:

sudo apt-get update

e installa virtualgl (che ha risolto il problema di errore libgl.so.1 per me in Steam)

sudo apt-get install virtualgl
    
risposta data Addae Dans 28.04.2014 - 21:20
0

Prova:

sudo apt-get install libgl1-mesa-glx-lts-utopic:i386
    
risposta data Donkey 11.05.2015 - 02:27

Leggi altre domande sui tag