Introduksjon til Mesa
Mesa tilbyr et bredt utvalg av
grafikk programvare, som OpenGL biblioteker og drivere, Vulkan
drivere og andre drivere.
Alle driverne fra denne pakken fungerer med libglvnd-1.7.0. Pakken
vil automatisk oppdage en libglvnd
installasjon hvis tilgjengelig og vil lenke mot bibliotekene levert
av den pakken. Dermed vil ikke OpenGL bibliotekene levert av denne
pakken bli bygget, bare driverne for OpenGL.
Viktig
Les Om
OpenGL for å avgjøre om du vil installere OpenGL
implementeringer fra denne leverandøren. Hvis du vil installere
libglvnd-1.7.0, installer den FØRST før du installerer denne pakken,
slik at denne pakkens OpenGL implementeringer ikke blir bygget.
Notat
Mesa oppdateres relativt ofte.
Du kan bruke den nyeste tilgjengelige 25.1.x mesa versjonen.
Notat
En internettforbindelse er nødvendig for å bygge Nouveau Vulkan
driveren. Systemsertifikatlageret må kanskje konfigureres med
make-ca-1.16.1 før du bygger denne pakken.
Notat
Dette kan ta litt tid å bygge. Gjør gjerne noe annet mens dette
bygges.
Mesa Avhengigheter
Påkrevd
libdrm-2.4.125, libxcb-1.17.0, mako-1.3.10,
PyYAML-6.0.2, og Xorg Biblioteker
Anbefalt
Valgfri
GBM (GBM fra Mesa-25.1.4 eller Mesa-25.1.4),
libgcrypt, libglvnd-1.7.0, libunwind-1.8.1,
lm-sensors, Nettle-3.10.1,
valgrind, Mesa-Demos
(provides more than 300 demos to test Mesa), Bellagio OpenMAX Integration
Layer (for mobile plattformer), og
libtizonia
Installasjon av Mesa
Installer Mesa ved å kjøre
følgende kommandoer:
mkdir build &&
cd build &&
meson setup \
--prefix=/usr \
--buildtype=release \
-D platforms=x11,wayland \
-D gallium-drivers=auto \
-D vulkan-drivers=auto \
-D gles1=disabled \
-D video-codecs=all \
-D valgrind=disabled \
-D libunwind=disabled \
.. &&
ninja
For å teste resultatene, utsted: meson configure -D build-tests=true &&
ninja test.
Nå, som root
bruker:
ninja install
Hvis ønskelig, installer den valgfrie dokumentasjonen ved å kjøre
følgende kommandoer som root
bruker:
cp -rv ../docs -T /usr/share/doc/mesa-25.1.4
Parameterforklaringer
Notat
Undersøk meson_options.txt
eller
meson.options
for en fullstendig
liste over alternativer.
--buildtype=release
: Denne
bryteren sikrer en fullstendig optimalisert bygging, og deaktiverer
feilsøkingspåstander som vil gjøre bibliotekene betydelig tregere i
visse brukstilfeller. Uten denne bryteren kan byggestørrelser
strekke seg inn i 2 GB området.
-D platforms=...
: Denne
parameteren kontrollerer hvilke vindussystemer som støttes.
Tilgjengelige Linux plattformer er x11 og Wayland.
-D gallium-drivers=auto
:
Denne parameteren kontrollerer hvilke Gallium3D drivere som skal
bygges. Gallium drivere er i hovedsak OpenGL drivere. Hvis du
ønsker å bygge spesifikke drivere, inkluderer gyldige alternativer:
-
auto
velger alle tilgjengelige
Gallium3D drivere for x86
-
r300
(for ATI Radeon 9000 eller
Radeon X seriene)
-
r600
(for AMD/ATI Radeon HD
2000-6000 seriene)
-
radeonsi
(for AMD Radeon HD 7000
eller nyere AMD GPU modeller)
-
nouveau
(For støttede NVIDIA
GPU-er, de er oppført alle som «3D funksjoner»
enten «DONE» eller «N/A» i the
Nouveau status page)
-
virgl
(for QEMU virtuelle GPU
med virglrender støtte)
-
svga
(for VMWare virtuelle GPU)
-
softpipe
(bruke CPU for 3D
rasterisering)
-
llvmpipe
(softpipe
men bruker LLVM for å øke ytelsen)
-
zink
(en driver som konverterer
OpenGL kall til Vulkan; hvis Vulkan driveren er effektiv, kan
denne driveren også være effektiv; kan brukes som en
erstatning for Gallium3D drivere som nouveau
som beskrevet i Hva nå?)
-
iris
(for Intel GPUer levert med
Broadwell eller nyere CPUer)
-
crocus
(for Intel GMA 3000,
X3000 serie, 4000 serie, eller X4000 serie GPUer levert med
brikkesett, eller Intel HD GPUer levert med pre-Broadwell
CPUer)
-
i915
(for Intel GMA 900, 950,
3100, eller 3150 GPUer levert med brikkesett eller Atom D/N
4xx/5xx CPUer)
Du kan erstatte auto
med en
kommaseparert liste for å bygge et delsett av disse driverne hvis
du vet nøyaktig hvilke drivere du trenger, for eksempel:
-D
gallium-drivers=radeonsi,iris,swrast
.
-D vulkan-drivers=auto
:
Denne bryteren aktiverer støtte for Vulkan grafikk API. Den bygger
automatisk alle grafikkdrivere som er tilgjengelige for Vulkan.
Hvis du ønsker å bygge spesifikke drivere, inkluderer gyldige
alternativer:
-
amd
(for AMD Radeon HD 7730
eller nyere AMD GPUer)
-
intel
(for Intel GPUer levert
med Skylake eller nyere CPUer, eller som et dedikert PCIe
kort)
-
intel_hasvk
(for Intel GPUer
levert med Ivy Bridge, Haswell, eller Broadwell CPUer)
-
nouveau
(for GTX 16XX, RTX 20XX,
eller nyere NVIDIA GPUer; denne driveren utvikles og er
allerede ganske effektiv, men mindre enn NVIDIA driver; det er imidlertid en god
erstatning, spesielt når den brukes med zink
)
-
swrast
(bruker CPU for
3D-rasterisering. Merk at det er mye tregere enn å bruke et
moderne 3D kompatibelt GPU)
Du kan erstatte auto
med en
kommaseparert liste for å bygge et delsett av disse driverne hvis
du vet nøyaktig hvilke drivere du trenger, for eksempel:
-D vulkan-drivers=amd,nouveau,swrast
.
-D gles1=disabled
: Dette
flagget deaktiverer bygging av en utdatert spesifikasjon for OpenGL
ES.
-D video-codecs=all
: Denne
parameteren aktiverer bygging av alle videokodeker, siden de er
deaktivert som standard for å unngå juridiske problemer. Det ville
være klokt å ikke distribuere byggingen din hvis du angir dette
alternativet. Saken er imidlertid fortsatt uklar. Se dette.
Debian
bug report for mer informasjon.
-D valgrind=disabled
: Denne
parameteren deaktiverer bruken av Valgrind under byggeprosessen.
Fjern denne parameteren hvis du har Valgrind installert og ønsker å
sjekke for minnelekkasjer.
-D libunwind=disabled
:
Denne parameteren deaktiverer bruken av libunwind.
-D egl-native-platform="..."
: Denne
parameteren styrer hvilken støtte for innebygde grafikkbiblioteker
som skal bygges. Tilgjengelige Linux alternativer er auto
(standard), x11, wayland, surfaceless og drm.
-D gles2=disabled
: Hvis du ikke trenger
OpenGL ES, bruk dette alternativet. Sørg for å lese «Om GLES
(OpenGL ES)».
-D legacy-x11="..."
Denne parameteren
kontrollerer hvilke eldre X11 funksjoner som får innebygd støtte.
Tilgjengelige Linux alternativer er ingen (standard) og dri2. Disse
funksjonene er sjelden nødvendig lenger.
-D libgbm-external=true
: Dette lenker
mot systeminstallerte libgbm
og
deaktiverer bygging av GBM hvis den er installert. Når du
oppdaterer denne pakken, anbefales det å også oppdatere GBM slik at
dette alternativet ikke brukes.
BINDGEN_EXTRA_CLANG_ARGS="-m32"
: Denne
variabelen sikrer at rust-bindgen-0.72.0 genererer
bindinger som ikke går utenfor grensene ved kompilering av lib32
Nouveau Vulkan.
sed -i
's/\/usr\/lib\//\/usr\/lib32\//g' ./build.ninja:
Denne pakken kan være sta og liker å lenke mot LLVM biblioteker i
/lib
, selv på en multilib
installasjon, så denne kommandoen forteller denne pakken at den
skal lenke mot biblioteker i riktig mappe.
meson configure -D
build-tests=true: Denne kommandoen vil konfigurere
bygget på nytt for å angi -D
build-tests=true
, men behold de andre alternativene som er
spesifisert i meson
setup kommandoen uendret. Den tillater ninja test å bygge og kjøre
enhetstester.