Introduction à Mesa
        
        
          Mesa est une bibliothèque
          graphique 3D compatible avec OpenGL.
        
        
          ![[Note]](../images/note.png) 
          
            Note
          
          
            Mesa est mis à jour
            régulièrement. Vous pourriez vouloir utiliser la dernière version
            19.3.x disponible.
          
         
        
          Ce paquet est connu pour se construire correctement sur une
          plateforme LFS-9.1.
        
        
          Informations sur le paquet
        
        
        
          Téléchargements supplémentaires
        
        
        
          Dépendances de Mesa
        
        
          Requises
        
        
          Bibliothèques Xorg, libdrm-2.4.100 et
          Mako-1.1.1
        
        
          Recommandées
        
        
          libva-2.6.1 (pour construire les pilotes VA-API
          pour certains pilotes gallium, remarquez qu'il y a une dépendance
          circulaire. Vous devez construire libva d'abord sans le support EGL et GLX,
          installer ce paquet puis reconstruire libva), libvdpau-1.3
          (pour construire les pilotes VDPAU), LLVM-9.0.1 (requis
          pour les pilotes Gallium3D, r300 et radeonsi et pour swrast, le
          rasteriseur logiciel souvent appelé llvmpipe. Voir http://www.mesa3d.org/systems.html
          pour plus d'information) et wayland-protocols-1.18 (requis pour
          Plasma-5.18.1, GNOME et recommandé
          pour GTK+-3.24.13)
        
        
          Facultatives
        
        
          libgcrypt-1.8.5, lm-sensors-3-6-0, Nettle-3.5.1,
          Valgrind-3.15.0, 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 et 
          libtizonia
        
        
          ![[Note]](../images/note.png) 
          
            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 : http://wiki.linuxfromscratch.org/blfs/wiki/mesa
        
       
      
        
          Installation de Mesa
        
        
          Tout d'abord, corrigez un problème avec l'utilisation de Xorg pour
          les appareils qui utilisent le pilote SVGA :
        
        patch -Np1 -i ../mesa-19.3.4-fix_svga_vmwgfx_segfaults-1.patch
        
          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-19.3.4-add_xdemos-1.patch
        
          Si Python-2.7.17 n'est pas installé, ajustez un
          script dans la suite de test pour qu'il utilise Python 3 :
        
        sed '1s/python/&3/' -i bin/symbols-check.py
        
          ![[Note]](../images/note.png) 
          
            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, sélectionnez les pilotes que vous souhaitez installer.
          Pour l'architecture X86, les pilotes gallium disponibles sont auto,
          ou un seul au choix parmi
          i915, nouveau, r300, r600, radeonsi, svga, swrast et virgl. Ce
          dernier est recommandé si vous voulez lancer le système sous
          qemu-4.2.0. Si vous souhaitez construire tous les
          pilotes gallium utilisez « auto ».
        
        
          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 plateforme (« systèmes de fenêtrages ») disponibles
          pour linux sous X86 sont x11, wayland, drm 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 http://www.mesa3d.org/systems.html.
        
        
          ![[Note]](../images/note.png) 
          
            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="i915,nouveau,r600,radeonsi,svga,swrast,virgl"
DRI_DRIVERS="i965,nouveau"
        
          Installez Mesa en lançant les
          commandes suivantes :
        
        mkdir build &&
cd    build &&
meson --prefix=$XORG_PREFIX          \
      -Dbuildtype=release            \
      -Ddri-drivers=$DRI_DRIVERS     \
      -Dgallium-drivers=$GALLIUM_DRV \
      -Dgallium-nine=false           \
      -Dglx=dri                      \
      -Dosmesa=gallium               \
      -Dvalgrind=false               \
      ..                             &&
unset GALLIUM_DRV DRI_DRIVERS &&
ninja
        
          Si vous construisez les tests (voir l'« Explication des
          commandes »), pour les lancez exécutez : ninja test.
        
        
          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-19.3.4 &&
cp -rfv ../docs/* /usr/share/doc/mesa-19.3.4
       
      
        
          Explication des commandes
        
        
          -Dbuildtype=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 taille de la construction peut prendre jusqu'à 2 GB.
        
        
          -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=true : activer ce
          paramètre fournit la prise en charge des jeux (Windows) conçus pour
          DX9.
        
        
          -Dosmesa=gallium : ce
          paramètre active la construction de la bibliothèque libOSMesa et fournit la prise en charge
          Gallium3D. Il a besoin du pilote gallium swrast.
        
        
          -Dvalgrind=false : 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.
        
        
          -Dbuild-tests=true : Cette option
          activera le code de test.