Mesa-21.3.6

Introduction à Mesa

Mesa est une bibliothèque graphique 3D compatible avec OpenGL.

[Note]

Note

Mesa est mis à jour régulièrement. Vous pourriez vouloir utiliser la dernière version 21.3.x disponible.

This package is known to build and work properly using an LFS-11.1 platform.

Informations sur le paquet

Téléchargements supplémentaires

Dépendances de Mesa

Requises

Bibliothèques Xorg, libdrm-2.4.110 et Mako-1.1.6

Recommandées

Facultatives

libgcrypt-1.10.0, lm-sensors-3-6-0, Nettle-3.7.3, Valgrind-3.18.1, mesa-demos (fournit plus de 300 démos supplémentaires pour tester Mesa ; ceci inclut les même programmes que ceux ajoutés par le correctif ci-dessus), Bellagio OpenMAX Integration Layer (pour les plateformes mobiles), libunwind, libtizonia et libvulkan (pour le pilote zink)

[Note]

Note

Les instructions considèrent que LLVM avec les moteurs hôte et r600/amdgpu et les informations de type à l'exécution (RTTI, requis pour nouveau) sont installés. Vous devrez modifier les instructions si vous choisissez de ne pas tous les installer. Pour une explication de Gallium3D lisez https://en.wikipedia.org/wiki/Gallium3D.

Notes utilisateur : https://wiki.linuxfromscratch.org/blfs/wiki/mesalib

Installation de Mesa

Si vous avez téléchargé le correctif xdemos (nécessaire pour tester l'installation de Xorg par les instructions de BLFS), appliquez-le en lançant la commande suivante :

patch -Np1 -i ../mesa-21.3.6-add_xdemos-1.patch
[Note]

Note

Les mesures ci-dessus, et le contenu plus bas sont pour la construction complète. En général, les gens n'ont pas envie d'installer les pilotes qu'ils n'utilisent pas, donc les paragraphes suivants expliquent comment limiter les pilotes et donnent un exemple qui peut être réduit ou modifié si nécessaire.

Maintenant, choisissez les pilotes que vous souhaitez installer. Pour l'architecture X86, les pilotes gallium disponibles sont auto (à partir de 21.2.1 cela ne sélectionne pas crocus), ou un seul au choix parmi crocus, i915, iris, nouveau, r300, r600, radeonsi, svga, swrast et virgl. Ce dernier peut fournir l'accélération dans qemu-6.2.0 s'il a été construit avec virglrenderer (vous aurez besoin d'un compte freedesktop.org pour obtenir cette page, vous pouvez télécharger la version 0.9.1 sans compte à partir de virglrenderer-0.9.1).

Les pilotes (non-gallium) DRI disponibles sous X86 sont auto, ou un seul au choix parmi i915, i965, nouveau, r100, r200 et swrast. Utilisez « auto » pour construire tous les pilotes DRI ou utilisez une chaîne vide (DRI_DRIVERS="") si vous voulez seulement construire des pilotes gallium.

Les plateformes (« systèmes de fenêtrages ») disponibles pour linux sous X86 sont x11, wayland et surfaceless. En ne spécifiant rien, le système de construction meson construira pour toutes ces plateformes si vous avez les dépendances, comme si vous aviez spécifié « -Dplatforms=auto ».

Modifiez les commandes ci-dessous pour indiquer les pilotes que vous souhaitez. Les pilotes listés ci-dessous couvriront les cartes vidéos les plus modernes et les machines virtuelles. Pour trouver de l'aide à la sélection des pilotes lisez https://docs.mesa3d.org/systems.html. Pour les pilotes intel, spécifiez crocus pour i965 gen 4 jusqu'à haswell, iris pour broadwell et supérieur.

[Note]

Note

Bien que les pilotes nouveau puissent être construits pour gallium et dri, le pilote i915 ne peut être construit que pour l'un des deux.

GALLIUM_DRV="crocus,i915,iris,nouveau,r600,radeonsi,svga,swrast,virgl"
DRI_DRIVERS="i965,nouveau"
[Note]

Note

Si vous utilisez un GPU NVIDIA sur votre système, un correctif spécifique a été créé pour permettre l'utilisation correcte du multi-tâche dans le pilote Mesa. Cela corrige des problèmes avec les application Qt parallèles ainsi qu'avec le démarrage de certaines applications GNOME. Ce correctif est aussi indispensable si vous voulez utiliser KDE Plasma. Appliquez le correctif avec la commande suivante :

patch -Np1 -i ../mesa-21.3.6-nouveau_fixes-1.patch

Installez Mesa en exécutant les commandes suivantes :

mkdir build &&
cd    build &&

meson --prefix=$XORG_PREFIX          \
      --buildtype=release            \
      -Ddri-drivers=$DRI_DRIVERS     \
      -Dgallium-drivers=$GALLIUM_DRV \
      -Dgallium-nine=false           \
      -Dglx=dri                      \
      -Dvalgrind=disabled            \
      -Dlibunwind=disabled           \
      ..                             &&

unset GALLIUM_DRV DRI_DRIVERS &&

ninja

Si vous construisez les tests (voir l'« Explication des commandes »), pour les lancer exécutez : ninja test. Un test, mesa: intel/anv_state_pool, est connu pour échouer.

Maintenant, en tant qu'utilisateur root :

ninja install

Si vous le désirez, installez la documentation facultative en lançant les commandes suivantes en tant qu'utilisateur root :

install -v -dm755 /usr/share/doc/mesa-21.3.6 &&
cp -rfv ../docs/* /usr/share/doc/mesa-21.3.6

Explication des commandes

--buildtype=release : ce paramètre s'assure que la construction est complètement optimisée et désactive les assertions de débogage qui ralentiraient sévèrement les bibliothèques pour certains usages. Sans ce paramètre, la construction peut prendre dans les 2 Go.

-Ddir-drivers="..." : Ce paramètre contrôle quels pilotes dri (non-gallium) doivent être construits.

-Dgallium-drivers="..." : Ce paramètre contrôle quels pilotes Gallium3D doivent être construits.

-Dgallium-nine=false : évite de construire la prise en charge des jeux (Windows) conçus pour DX9. Indiquez true si vous voulez cette prise en charge.

-Dvalgrind=disabled : Ce paramètre désactive l'utilisation de Valgrind pendant le processus de construction. Supprimez ce paramètre si vous avez installé Valgrind et souhaitez vérifier les fuites mémoire.

-Dlibunwind=disabled : ce paramètre désactive l'utilisation de libunwind.

-Dbuild-tests=true : cette option activera le code de test. Pour lancer les tests, lancez : ninja test.

-Dvulkan-drivers=... : cette option vous permet de choisir les pilote Vulkan à construire. Comme ces pilotes dépendent des pilotes Gallium3D correspondants, n'activez pas de pilotes qui ne sont pas activés dans les pilotes Gallium3D. En plus, comme BLFS n'utilise pas Vulkan, vous pouvez laisser la liste des pilotes Vulkan vide.

Contenu

Programmes installés: glxgears et glxinfo
Bibliothèques installées: libEGL.so, libGL.so, libGLESv1_CM.so, libGLESv2.so, libXvMCnouveau.so, libXvMCr600.so, libgbm.so, libglapi.so, libvulkan_intel.so, libvulkan_lvp.so, libvulkan_radeon.so et libxatracker.so
Pilotes installés: d3dadapter9.so (facultatif), crocus_dri.so, i915_dri.so, i965_dri.so, iris_dri.so, kms_swrast_dri.so, nouveau_dri.so, nouveau_drv_video.so, nouveau_vieux_dri.so, r200_dri.so (facultatif), r300_dri.so (facultatif), r600_dri.so, r600_drv_video.so, radeon_dri.so (facultatif), radeonsi_dri.so, radeonsi_drv_video.so, swrast_dri.so, virtio_gpu_dri.so, vmwgfx_dri.so, libvdpau_nouveau.so, libvdpau_r300.so (facultatif), libvdpau_r600.so, and libvdpau_radeonsi.so (nombre de ces pilotes sont liés en dur).
Répertoires installés: $XORG_PREFIX/{include/{EGL,GL,GLES,GLES2,GLES3,KHR},lib/{dri,vdpau}}, $XORG_PREFIX/include/d3adapter (facultatif), $XORG_PREFIX/lib/d3d (facultatif), $XORG_PREFIX/share/drirc.d (contient des contournements pour plusieurs applications, en particulier les navigateurs et les jeux), $XORG_PREFIX/share/vulkan et /usr/share/doc/mesa-21.3.6 (facultatif)

Descriptions courtes

glxgears

est une démo GL utile pour dépanner des problèmes graphiques

glxinfo

est un programme de diagnostic affichant des informations sur le matériel graphique et les bibliothèques GL installées

libEGL.so

fournit nativement une interface de plate-forme graphique qui est définie avec les spécifications EGL-1.4

libgbm.so

est la bibliothèque de gestion du tampon graphique de Mesa

libGLESv1_CM.so

est la bibliothèque OpenGL ES 1.1 de Mesa

libGLES2.so

est la bibliothèque OpenGL ES 2.0 de Mesa

libGL.so

est la bibliothèque OpenGL principale de Mesa

Last updated on