Я нахожусь на чистой минимальной установке Debian Stretch с установленной парой графических пакетов. Я привил такие:
sudo apt install xserver-xorg-core xinit bumblebee-nvidia primus primus-libs:i386 libgl1-nvidia-glx:i386
Но я мог поменять пропиетарный bumblebee-nvidia
на открытый bumblebee
.
Еще я поместил своего пользователя в группу шмелей:
sudo adduser $USER bumblebee
После перезагрузки моя карта Intel работает нормально:
ziga@ziga-laptop:~$ glxinfo | grep OpenGL
OpenGL vendor string: Intel Open Source Technology Center
OpenGL renderer string: Mesa DRI Intel(R) Ivybridge Mobile
OpenGL core profile version string: 3.3 (Core Profile) Mesa 13.0.6
OpenGL core profile shading language version string: 3.30
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
OpenGL core profile extensions:
OpenGL version string: 3.0 Mesa 13.0.6
OpenGL shading language version string: 1.30
OpenGL context flags: (none)
OpenGL extensions:
OpenGL ES profile version string: OpenGL ES 3.0 Mesa 13.0.6
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.00
OpenGL ES profile extensions:
Но моя карта Nvidia, которая называется Geforce 610M, не будет работать при вызове с optirun
:
ziga@ziga-laptop:~$ optirun glxinfo | grep OpenGL
primus: fatal: failed to load any of the libraries: /usr/lib/x86_64-linux-gnu/nvidia/libGL.so.1:/usr/lib/i386-linux-gnu/nvidia/libGL.so.1:/usr/lib/nvidia/libGL.so.1
/usr/lib/x86_64-linux-gnu/nvidia/libGL.so.1: cannot open shared object file: No such file or directory
/usr/lib/i386-linux-gnu/nvidia/libGL.so.1: wrong ELF class: ELFCLASS32
/usr/lib/nvidia/libGL.so.1: cannot open shared object file: No such file or directory
Если я использую apt
для поиска своей карты, я получаю следующее:
ziga@ziga-laptop:~$ sudo apt search 610M
Sorting... Done
Full Text Search... Done
nvidia-legacy-304xx-driver/stable 304.137-5~deb9u1 amd64
NVIDIA metapackage (304xx legacy version)
nvidia-legacy-304xx-kernel-dkms/stable 304.137-5~deb9u1 amd64
NVIDIA binary kernel module DKMS source (304xx legacy version)
nvidia-legacy-304xx-kernel-source/stable 304.137-5~deb9u1 i386
NVIDIA binary kernel module source (304xx legacy version)
xserver-xorg-video-nvidia-legacy-304xx/stable 304.137-5~deb9u1 amd64
NVIDIA binary Xorg driver (304xx legacy version)
Из этого я бы установил nvidia-legacy-304xx-driver
, но боюсь, что это не будет работать с другими пакетами, которые я установил выше. Возможно ли, что мне тоже понадобится xserver-xorg-video-nvidia-legacy-304xx
?
Может ли кто-нибудь объяснить мне, какие пакеты устанавливать и почему?
Что ж, я не мог больше ждать и попытался установить xserver-xorg-video-nvidia-legacy-304xx
. Похоже, этот пакет действительно конфликтует с пакетом bumblebee-nvidia
. Получил после установки:
nvidia-legacy-304xx:
Running module version sanity check.
- Original module
- No original module exists within this kernel
- Installation
- Installing to /lib/modules/4.9.0-8-amd64/updates/dkms/
depmod...
DKMS: install completed.
Setting up nvidia-legacy-304xx-driver (304.137-5~deb9u1) ...
Processing triggers for libc-bin (2.24-11+deb9u3) ...
Processing triggers for glx-alternative-nvidia (0.8.3~deb9u1) ...
Processing triggers for menu (2.1.47+b1) ...
Processing triggers for update-glx (0.8.3~deb9u1) ...
Processing triggers for glx-alternative-nvidia (0.8.3~deb9u1) ...
update-alternatives: warning: forcing reinstallation of alternative /usr/lib/nvidia/bumblebee because link group glx is broken
Processing triggers for libc-bin (2.24-11+deb9u3) ...
Processing triggers for initramfs-tools (0.130) ...
update-initramfs: Generating /boot/initrd.img-4.9.0-8-amd64
Processing triggers for bumblebee (3.2.1-14) ...
Я удалил xserver-xorg-video-nvidia-legacy-304xx
и попытался установить пакет nvidia-legacy-304xx-driver
, который также установил пакет xserver-xorg-video-nvidia-legacy-304xx
. Он не вернул ни предупреждений, ни ошибок, но после перезагрузки команда optirun glxinfo | grep OpenGL
по-прежнему не работает ...
Похоже, что для этого нет решения даже в Debian, который должен был быть стабильным?
Как и предположил @Antonio Orizondo Leyva, я установил пакеты, которые он предлагает, и выполнил команду sudo update-alternatives --config glx
, и мне нужно было выбрать разные параметры для своего графического процессора:
There are 3 choices for the alternative glx (providing /usr/lib/glx).
Selection Path Priority Status
------------------------------------------------------------
0 /usr/lib/nvidia/bumblebee 125 auto mode
1 /usr/lib/mesa-diverted 5 manual mode
2 /usr/lib/nvidia 100 manual mode
* 3 /usr/lib/nvidia/bumblebee 125 manual mode
Press <enter> to keep the current choice[*], or type selection number:
Я попытался выбрать каждый из них, а затем перезагрузился, но конечный результат был таким же ... За исключением второго варианта (nvidia
), который после перезагрузки сказал, что не может найти openGL.1.so
или что-то в этом роде ... Так что невозможно даже использовать карту Nvidia отдельно !?
Любые другие идеи?