Ошибка загрузки libGL.so.1

При попытке запустить различные части программного обеспечения (особенно Steam и Yenka), я столкнулся с ошибкой, подобной этой: error while loading shared libraries: libGL.so.1: cannot open shared object file: No such file or directory

Я использую 64-битную систему с картой NVidia Optimus (я использую двойную загрузку только для некоторых программ Windows, для которых требуется выделенная видеокарта). У меня установлен шмель, и я использую драйвер nvidia-current, а не драйвер, скачанный с NVidia, как рекомендовано.

Библиотека (libGL.so.1) отсутствует в верхнем каталоге /usr/libоднако он присутствует в /usr/lib32/nvidia-current, как мягкая ссылка на /usr/lib32/nvidia-current/libGL.so.304.64,

Раздел вывода из 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

Очевидно, что библиотека с таким именем загружается, но они расположены в /usr/lib/x86_64-linux-gnuОднако установленное программное обеспечение, похоже, не может его "увидеть". Для Steam запуск его с помощью optirun заставляет его работать, но это не относится к Yenka. Я предполагаю, что optirun вызывает библиотеку, хранящуюся в /usr/lib32/nvidia-current использовать, что позволяет запускать Steam, поэтому я не могу понять, почему Yenka не запускается.

Кто-нибудь может объяснить, почему программное обеспечение не может видеть обычную библиотеку mesa и почему Yenka отказывается работать с библиотекой nvidia-current?

8 ответов

Решение

С установленными драйверами nvidia скайп ищет lib i386, предоставляемый пакетом nvidia. Так как этого не существует, можно использовать i386 libGL.so.1, предоставленный mesa.

Протестировано на (ubuntu-gnome raring, используя nvidia-325) и (ubuntu-gnome saucy, используя nvidia-319) мы смогли это исправить следующим образом:

update-alternatives --display i386-linux-gnu_gl_conf

Это покажет вам, какие есть доступные варианты.

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'

Итак, сделайте следующее:

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

затем выберите лучшую альтернативу (я выбрал i386-linux-gnu/mesa/ld.so.conf): в выходных данных ниже есть два варианта альтернативы i386-linux-gnu_gl_conf (предоставляя /etc/ld.so.conf. д /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

После этого попробуйте запустить:

sudo ldconfig

и тогда вы сделали.

У меня такая же проблема после установки скайпа... так что вы можете сделать любую вещь, чтобы исправить эту ошибку..

Первый - запустить приложение, выполнив следующую команду... например, я запускаю скайп..

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

ИСТОЧНИК

2-й, что я сделал

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

и добавьте в него следующую строку

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

сохранить и выйти

и, наконец, запустить

sudo ldconfig -v

Я надеюсь, что это исправит вашу ошибку libGL.so.1, как это сделал мой

Вы также можете найти libGL.so.1

   find / -name libGL.so.1

Исправления здесь будут работать, но есть и более простая.

Если skype не работает но optirun skype работает, то вы можете это исправить с помощью:

sudo apt-get install bumblebee-nvidia --reinstall

(Людям, использующим Bumblebee с картами AMD, может потребоваться аналогичная переустановка).

Шмель как вызывает, так и исправляет эту проблему, но исправление, которое он применяет, происходит при установке, когда он делает библиотеки libGL доступными для интегрированной карты, а также для более мощной карты. Этого не произойдет, если эти библиотеки еще не были установлены, когда вы установили Bumblebee, поэтому требуется переустановка. Это не должно повлиять на конфигурацию вашего шмеля, хотя, очевидно, стоит проверить после того, как вы это сделаете.

Отредактируйте запись на рабочем столе:

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

Измените Exec на:

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

Это работает:

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

перед запуском скайпа, когда вы запускаете его с записью запуска / рабочего стола.

После этого он должен нормально работать, если вы запустите его с помощью панели запуска приложений.

У меня была похожая проблема, и я решил ее, установив 32-битные библиотеки в моей 64-битной системе: apt-get install ia32-libs

Я не уверен, поможет ли это прояснить или нет, но у меня была та же проблема со скайпом и libGL.so.1. Также работает 13.04 с картой Optimus и шмелем.

У меня возникла проблема с запуском скайпа без optirun, но он работал нормально. Я просто изменил файл рабочего стола для запуска с optirun каждый раз и вуаля. фиксированный!

Загрузите последнюю версию с официальной страницы Steam, затем дайте ей загрузить то, что ей нужно, из терминала (если есть необходимость). чем добавить шмеля ppa, если вы еще этого не сделали.

sudo add-apt-repository ppa:bumblebee/stable

обновите его с помощью этой команды:

sudo apt-get update

и установить virtualgl(что решил libgl.so.1 ошибка для меня в Steam)

sudo apt-get install virtualgl

Пытаться:

sudo apt-get install libgl1-mesa-glx-lts-utopic:i386
Другие вопросы по тегам