libEGL.so.1 не є символічним посиланням


54

Після установки будь-яких програм я отримую таку помилку

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

Що це за помилка і як її вирішити?


Це помилка, про яку повідомляє більшість користувачів. Спробуйте встановити драйверне програмне забезпечення askubuntu.com/questions/851069/…, і повідомте нас, якщо це вирішено
A Umar Mukthar

Відповіді:


48

Це питання, яке торкнулося багатьох користувачів і повідомляється про помилку на Launchpad .

Схоже, існує конфлікт між різними версіями libEGL.

Щоб позбутися цього попередження, створіть такі посилання (але спочатку прочитайте попереджувальний опис):

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

Попередження : Не потрібно змінювати вашу систему. Якщо після перезавантаження не вдається запустити графічний інтерфейс, ви можете вирішити:
1. Вхід в термінал;
2. Бігатиsudo dpkg-reconfigure nvidia*


3
Як згадував Noisy_Botnet (вибачте, не можу коментувати його під точками повторень) або як обговорювалося тут, проблема може бути вирішена TEMPORARILY. Але тепер, коли версія драйвера оновлена ​​з 375.39 до 375.51, вам, можливо, доведеться повторити її на "39 замінено на" 51 цього разу ... І на майбутнє вам, можливо, доведеться перевірити версії (коли 375.51 оновлено) та посилання Я дав оновлення щодо випуску ... PS: Прочитайте до кінця, перш ніж насправді набрати команди за посиланням; деякі з команд l
hekimgil

4
будь-яке слово на справжній виправлення цього?
Годдард

1
Чи потрібно це рішення повторювати при кожному оновленні версії?
AlikElzin-kilaka

1
Мені здається, що я не раз це роблю в системі, і, як згадувалося в попередньому коментарі, мені потрібно було змінити номери.
шавлія

Я думаю, це саме те, що замуровувало мою систему, змушуючи ядерно-n-pave. До цього я пройшов оновлення з 15.10, і KDE sddm-greeter продовжував збої з segfault у тій же бібліотеці EGL, як і gdm. Коли я повернувся до Нуво, він спрацював, але це був неймовірно низький FPS (ми говоримо про відео з 1990 року повільно). Це важливе питання, я вже сьогодні втратив 10 годин.
Джонатан Нойфельд

11

Далі наведена проста у використанні версія рішення Noisy_Botnet. Це полегшує повторення процесу для будь-якого оновлення.

#! /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

1

Ви оновили без оновлення спочатку? У мене було те саме повідомлення, я оновив, оновив і повідомлення пропало

sudo apt-get update
sudo apt-get upgrade

Я побіг sudo apt-get update, sudo apt-get upgrade, sudo apt-get dist-upgrade, sudo apt-get install nvidia-375а потім встановив свої додатки.
Данте

@Dante і це спрацювало? Помилка зникла?
AlikElzin-kilaka

@ AlikElzin-kilaka Після нової установки Ubuntu 16.04.2, першим, що я зробив, було оновлення моєї системи з основного сховища. Після цього я встановив nvidia-375драйвер і, нарешті, встановив будь-які інші потрібні програми. Але після установки кожної програми я отримую помилку, зазначену в моєму запитанні. Тож помилка не зникла. Навпаки, це почало відбуватися після оновлення.
Данте

update+upgradeтакож не вирішили питання для мене :(
AlikElzin-kilaka

Це спрацювало для мене (встановлення ескізу). Тож я видалив ескіз, зробив оновлення + оновлення та перевстановив ескіз
surfealokesea

0

У мене був той самий випуск і в кінцевому підсумку його вирішили; це працювало раніше. У мене є Cuda 8.0 і Tensorflow 1.3 на Ubuntu 16.04.

Ось як я вирішив це питання. Спочатку,

sudo apt-get update

sudo apt-get upgrade

Тоді,

sudo ldconfig /usr/local/cuda/lib64

Це працює зараз. Порядок виконання має значення.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.