Objectif
Installez la dernière version stable de Mesa sur Debian Stretch.
Répartition
Extension Debian 9
Exigences
Une installation fonctionnelle de Debian Stretch avec un accès root.
Difficulté
Moyen
Congrès
- # - nécessite que les commandes linux données soient exécutées avec les privilèges root soit directement en tant qu'utilisateur root, soit en utilisant
sudo
commande - $ - nécessite que les commandes linux données soient exécutées en tant qu'utilisateur régulier non privilégié
Présentation
Mesa est un gros problème si vous utilisez des pilotes graphiques open source. Cela peut faire la différence entre une expérience agréable et une expérience horrible.
Mesa est en cours de développement actif et voit des améliorations de performances constantes et notables. Cela signifie qu'il vaut vraiment la peine de rester au courant des dernières versions. Debian ne le fait généralement pas, donc les utilisateurs de Debian doivent prendre les choses en main.
Si vous utilisez Debian Stretch et que vous voulez la dernière version stable de Mesa, la construire vous-même est votre seule option. Ne vous inquiétez pas, ce n'est en fait pas si mal.
Installer les dépendances
Avant de pouvoir compiler Mesa, vous devez installer des dépendances. Mesa est un programme vaste et complexe, il y en a donc plusieurs, mais ils sont tous disponibles via apt
.
Commencez par saisir build-essential
et ayant apt
extrayez les dépendances de construction matérielle de Mesa.
# apt install build-essential # apt build-dep mesa libdrm2
Une fois que vous les avez, vous avez besoin de LLVM et de Clang. Installer la version 3.9
et les dépendances qui leur sont liées.
# 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 n'est pas la version par défaut dans Stretch même si les autres versions disponibles sont ridiculement obsolètes. Pour éviter toute bizarrerie, créez un lien symbolique entre la configuration de LLVM-3.9 et la configuration par défaut de LLVM.
# ln -s /usr/bin/llvm-config-3.9 /usr/bin/llvm-config
Installer Libdrm à partir de Sid
Parce que Debian est tellement obsolète, vous ne pouvez pas construire Mesa sans d'abord installer les packages Libdrm disponibles auprès de Sid. Ne vous inquiétez pas. Cela utilise apt-pinning pour s'assurer que uniquement les packages Libdrm sont installés à partir de Sid, afin que votre système ne devienne pas instable.
Commencez par ajouter les lignes suivantes à /etc/apt/sources.list
deb http://ftp.us.debian.org/debian/ sid main deb-src http://ftp.us.debian.org/debian sid main
Ensuite, vous devez créer un nouveau fichier dans /etc/apt/preferences
. Faites en sorte qu'il ressemble à l'exemple ci-dessous.
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
Mettre à jour apt
et installez les packages mis à jour.
# apt update # apt install libdrm2 libdrm-dev
Cloner Mesa depuis Git
Maintenant, vous pouvez cloner le code source Mesa à partir de Git. Rendez-vous dans le répertoire où vous souhaitez le compiler et le cloner.
$ cd ~/Downloads $ git clone -b 17.1 git://anongit.freedesktop.org/mesa/mesa
À l'heure actuelle, Mesa 17.1 est la dernière version stable. Si cela change, clonez cette branche. Si vous voulez exécuter le dernier code absolu, omettez -b
drapeau, mais cela peut être instable.
Une fois le clonage terminé, cd
dans le mesa
répertoire.
$ cd mesa
Construire et installer Mesa
Vous pouvez configurer et compiler Mesa maintenant. L'autogen
L'exemple ci-dessous est conçu pour être aussi robuste que possible et fonctionner dans presque toutes les situations. Si vous souhaitez l'adapter à votre système, recherchez toutes les options disponibles ou réduisez les éléments dont vous savez que vous n'en avez pas besoin.
./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
Une fois la configuration terminée, vous pouvez compiler et installer Mesa. Utilisez le -j
drapeau suivi du nombre de cœurs sur l'ordinateur plus 1 pour accélérer la compilation.
$ make -j5 # make install
La compilation prendra un certain temps. Une fois terminé et installé, redémarrez le serveur X ou votre ordinateur. Au redémarrage, vous exécuterez votre nouvelle version de Mesa.
Réflexions finales
Cette méthode n'est vraiment pas idéale. Vous êtes responsable de la maintenance de Mesa et de Libdrm sur votre ordinateur. D'autre part, vous pouvez vous assurer que vos pilotes graphiques open source sont toujours à jour, maximisant ainsi les performances de votre ordinateur dans les tâches gourmandes en ressources graphiques telles que les jeux.