libEGL.so.1 non è un collegamento simbolico

53

Dopo l'installazione di qualsiasi programma ottengo il seguente errore

Processing triggers for libc-bin (2.23-0ubuntu7) ...
/sbin/ldconfig.real: /usr/lib/nvidia-375/libEGL.so.1 is not a symbolic link

/sbin/ldconfig.real: /usr/lib32/nvidia-375/libEGL.so.1 is not a symbolic link

Che cos'è questo errore e come posso risolverlo?

    
posta Dante 05.04.2017 - 01:15

4 risposte

48

Questo è un problema che ha colpito molti utenti e lo è segnalato come bug su Launchpad .

Sembra esserci un conflitto tra diverse versioni di libEGL.

Per eliminare questi avvisi, crea i seguenti link simbolici (ma prima leggi l'avvertimento ):

sudo mv /usr/lib/nvidia-375/libEGL.so.1 /usr/lib/nvidia-375/libEGL.so.1.org
sudo mv /usr/lib32/nvidia-375/libEGL.so.1 /usr/lib32/nvidia-375/libEGL.so.1.org
sudo ln -s /usr/lib/nvidia-375/libEGL.so.375.39 /usr/lib/nvidia-375/libEGL.so.1
sudo ln -s /usr/lib32/nvidia-375/libEGL.so.375.39 /usr/lib32/nvidia-375/libEGL.so.1

Avviso : non è necessario modificare il sistema. Se dopo il riavvio non è possibile avviare l'interfaccia grafica, è possibile risolverla con:
1. Login in un terminale;
2. Esegui sudo dpkg-reconfigure nvidia*

    
risposta data Noisy_Botnet 06.04.2017 - 11:18
11

La seguente è una versione facile da usare della soluzione di Noisy_Botnet. Facilita la ripetizione del processo per qualsiasi aggiornamento.

#! /bin/sh
#
# find the file in /usr/lib
LIBEGL='find /usr/lib/nvidia* -name libEGL.so.\* | egrep "[0-9][0-9]*\.[0-9][0-9]*$"'
LIBEGL_LINK='echo $LIBEGL | sed 's/[0-9][0-9]*\.[0-9][0-9]*$/1/''
printf "\n\nThe following commands will be executed:\n+++++++++++++++++++++++++++++++++++++++\n"
printf "mv $LIBEGL_LINK ${LIBEGL_LINK}.orig\nln -s $LIBEGL $LIBEGL_LINK\n\n"
while true; do
    read -p "Do you wish to perform these commands?  " yn
    case $yn in
        [Yy]* ) mv $LIBEGL_LINK ${LIBEGL_LINK}.orig; ln -s $LIBEGL $LIBEGL_LINK ; break;;
        [Nn]* ) break;;
        * ) echo "Please answer yes or no.";;
    esac
done

# find the file in /usr/lib32
LIBEGL='find /usr/lib32/nvidia* -name libEGL.so.\* | egrep "[0-9][0-9]*\.[0-9][0-9]*$"'
LIBEGL_LINK='echo $LIBEGL | sed 's/[0-9][0-9]*\.[0-9][0-9]*$/1/''
printf "\n\nThe following commands will be executed:\n+++++++++++++++++++++++++++++++++++++++\n"
printf "mv $LIBEGL_LINK ${LIBEGL_LINK}.orig\nln -s $LIBEGL $LIBEGL_LINK\n\n"
while true; do
    read -p "Do you wish to perform these commands?  " yn
    case $yn in
        [Yy]* ) mv $LIBEGL_LINK ${LIBEGL_LINK}.orig; ln -s $LIBEGL $LIBEGL_LINK ; break;;
        [Nn]* ) break;;
        * ) echo "Please answer yes or no.";;
    esac
done
    
risposta data Gerard Tromp 06.07.2017 - 08:36
1

hai eseguito l'upgrade senza prima aggiornare? Ho ricevuto lo stesso messaggio, l'ho aggiornato, aggiornato e il messaggio era sparito

sudo apt-get update
sudo apt-get upgrade
    
risposta data Yuval Harpaz 06.04.2017 - 09:43
0

Ho avuto lo stesso problema e ho finito per superarlo; aveva funzionato prima. Ho Cuda 8.0 e Tensorflow 1.3 su Ubuntu 16.04.

Ecco come ho risolto il problema. Innanzitutto,

sudo apt-get update

sudo apt-get upgrade

Poi,

sudo ldconfig /usr/local/cuda/lib64

Funziona ora. L'ordine di esecuzione è importante.

    
risposta data Hahnsang 21.11.2017 - 20:25

Leggi altre domande sui tag