Objetivo
Instale la última versión estable de Mesa en Debian Stretch.
Distribuciones
Ampliación de Debian 9
Requisitos
Una instalación funcional de Debian Stretch con acceso de root.
Dificultad
Medio
Convenios
- # – requiere que los comandos de Linux dados se ejecuten con privilegios de root, ya sea directamente como usuario root o mediante el uso de
sudo
comando - $ – requiere que los comandos de Linux dados se ejecuten como un usuario normal sin privilegios
Introducción
Mesa es un gran problema si está ejecutando controladores de gráficos de código abierto. Puede ser la diferencia entre una experiencia fluida y una horrible.
Mesa está en desarrollo activo y ve mejoras de rendimiento constantes y notables. Eso significa que realmente vale la pena mantenerse al tanto de los últimos lanzamientos. Sin embargo, Debian normalmente no lo hace, por lo que los usuarios de Debian tienen que tomar el asunto en sus propias manos.
Si está ejecutando Debian Stretch y quiere la última versión estable de Mesa, su única opción es compilarla usted mismo. No te preocupes, en realidad no es tan malo.
Instalar las Dependencias
Antes de poder compilar Mesa, hay dependencias que debe instalar. Mesa es un programa grande y complejo, por lo que hay varios, pero todos están disponibles a través de apt
.
Comience tomando build-essential
y tener apt
tire de las dependencias de compilación dura de Mesa.
# apt install build-essential # apt build-dep mesa libdrm2
Una vez que los tenga, necesita LLVM y Clang. Instale la versión 3.9
y las dependencias relacionadas con ellos.
# apt install llvm-3.9 llvm-3.9-dev clang-3.9 clang-3.9-dev libxvmc-dev libxcb-xvmc0-dev libvdpau-dev libomxil-bellagio-dev
LLVM-3.9 no es la versión predeterminada en Stretch, aunque las otras versiones disponibles están ridículamente desactualizadas. Para evitar cualquier rareza, cree un enlace simbólico entre la configuración de LLVM-3.9 y la configuración predeterminada de LLVM.
# ln -s /usr/bin/llvm-config-3.9 /usr/bin/llvm-config
Instalar Libdrm desde Sid
Debido a que Debian está increíblemente desactualizado, no puede compilar Mesa sin instalar primero los paquetes Libdrm disponibles de Sid. No te preocupes. Esto usa apt-pinning para garantizar que solo los paquetes Libdrm se instalan desde Sid, por lo que su sistema no se volverá inestable.
Comience agregando las siguientes líneas a /etc/apt/sources.list
deb http://ftp.us.debian.org/debian/ sid main deb-src http://ftp.us.debian.org/debian sid main
A continuación, debe crear un nuevo archivo en /etc/apt/preferences
. Haz que se vea como el siguiente ejemplo.
Package: * Pin: release a=stable Pin-Priority: 1000 Package: * Pin: release a=unstable Pin-Priority: 2 Package: libdrm2 Pin: release a=unstable Pin-Priority: 1001 Package: libdrm-* Pin: release a=unstable Pin-Priority: 1001
Actualizar apt
e instale los paquetes actualizados.
# apt update # apt install libdrm2 libdrm-dev
Clonar Mesa desde Git
Ahora, puede clonar el código fuente de Mesa desde Git. Dirígete al directorio donde quieras compilarlo y clonarlo.
$ cd ~/Downloads $ git clone -b 17.1 git://anongit.freedesktop.org/mesa/mesa
En este momento, Mesa 17.1 es la última versión estable. Si eso cambia, clona esa rama. Si desea ejecutar el último código absoluto, omita -b
bandera, pero eso puede ser inestable.
Después de que termine de clonar, cd
en la mesa
directorio.
$ cd mesa
Construir e instalar Mesa
Puede configurar y compilar Mesa ahora. El autogen
El siguiente ejemplo está diseñado para ser lo más robusto posible y para funcionar en casi todas las situaciones. Si desea adaptarlo a su sistema, busque todas las opciones disponibles o reduzca las cosas que sabe que no necesita.
./autogen.sh --prefix=/usr --enable-texture-float --libdir=/usr/lib/x86_64-linux-gnu/ --with-gallium-drivers=i915,r300,r600,radeonsi,nouveau,swrast --with-egl-platforms=drm,x11 --enable-glx-tls --enable-shared-glapi --enable-glx --enable-driglx-direct --enable-gles1 --enable-gles2 --enable-gbm --enable-openmax --enable-xa --enable-osmesa --with-radeonsi-llvm-compiler --enable-sysfs --enable-vdpau --enable-xvmc --enable-openmax --enable-nine
Una vez que finaliza la configuración, puede compilar e instalar Mesa. Usa el -j
seguido por el número de núcleos en la computadora más 1 para acelerar la compilación.
$ make -j5 # make install
La compilación llevará algún tiempo. Cuando esté listo e instalado, reinicie el servidor X o su computadora. Cuando reinicie, estará ejecutando su nueva versión de Mesa.
Pensamientos finales
Este método realmente no es ideal. Usted es responsable de mantener Mesa y Libdrm en su computadora. Por otro lado, puede asegurarse de que sus controladores de gráficos de código abierto estén siempre actualizados, lo que maximiza el rendimiento de su computadora en tareas gráficas intensivas como los juegos.