Під час спроби запустити різні програми (зокрема 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?