[868c7c2] | 1 | <?xml version="1.0" encoding="ISO-8859-1"?>
|
---|
[6732c094] | 2 | <!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
|
---|
| 3 | "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
|
---|
[868c7c2] | 4 | <!ENTITY % general-entities SYSTEM "../../general.ent">
|
---|
| 5 | %general-entities;
|
---|
| 6 |
|
---|
[c0a8c0dc] | 7 | <!ENTITY mesa-download-http "https://mesa.freedesktop.org/archive/mesa-&mesa-version;.tar.xz">
|
---|
| 8 | <!ENTITY mesa-download-ftp "ftp://ftp.freedesktop.org/pub/mesa/mesa-&mesa-version;.tar.xz">
|
---|
[28d6ae07] | 9 | <!ENTITY mesa-md5sum "689d32b071b10520a54d78267a2edcf7">
|
---|
[d628802] | 10 | <!ENTITY mesa-size "16 MB">
|
---|
[28d6ae07] | 11 | <!ENTITY mesa-buildsize "674 MB (with docs, add 380 MB for tests)">
|
---|
| 12 | <!ENTITY mesa-time "3.5 SBU (Using parallelism=4; with docs, add 0.5 SBU for tests)">
|
---|
[868c7c2] | 13 | ]>
|
---|
| 14 |
|
---|
[7a395d1] | 15 | <sect1 id="mesa" xreflabel="Mesa-&mesa-version;">
|
---|
| 16 | <?dbhtml filename="mesa.html"?>
|
---|
[868c7c2] | 17 |
|
---|
| 18 | <sect1info>
|
---|
| 19 | <date>$Date$</date>
|
---|
| 20 | </sect1info>
|
---|
| 21 |
|
---|
[7a395d1] | 22 | <title>Mesa-&mesa-version;</title>
|
---|
[868c7c2] | 23 |
|
---|
[7a395d1] | 24 | <indexterm zone="mesa">
|
---|
| 25 | <primary sortas="a-Mesa">Mesa</primary>
|
---|
[868c7c2] | 26 | </indexterm>
|
---|
| 27 |
|
---|
| 28 | <sect2 role="package">
|
---|
[7a395d1] | 29 | <title>Introduction to Mesa</title>
|
---|
[868c7c2] | 30 |
|
---|
[eb425b4] | 31 | <para>
|
---|
| 32 | <application>Mesa</application> is an OpenGL compatible 3D graphics
|
---|
| 33 | library.
|
---|
| 34 | </para>
|
---|
[868c7c2] | 35 |
|
---|
[fdcf97c7] | 36 | <note>
|
---|
| 37 | <para>
|
---|
| 38 | <application>Mesa</application> is updated relatively often. You may
|
---|
| 39 | want to use the latest available &mesa-major-minor;.x mesa version.
|
---|
| 40 | </para>
|
---|
| 41 | </note>
|
---|
| 42 |
|
---|
[f1a479c7] | 43 | &lfs111_checked;
|
---|
[ca0c29cc] | 44 |
|
---|
[868c7c2] | 45 | <bridgehead renderas="sect3">Package Information</bridgehead>
|
---|
| 46 | <itemizedlist spacing="compact">
|
---|
| 47 | <listitem>
|
---|
[de938a4e] | 48 | <para>
|
---|
[7a395d1] | 49 | Download (HTTP): <ulink url="&mesa-download-http;"/>
|
---|
[de938a4e] | 50 | </para>
|
---|
[868c7c2] | 51 | </listitem>
|
---|
| 52 | <listitem>
|
---|
[de938a4e] | 53 | <para>
|
---|
[7a395d1] | 54 | Download (FTP): <ulink url="&mesa-download-ftp;"/>
|
---|
[de938a4e] | 55 | </para>
|
---|
[868c7c2] | 56 | </listitem>
|
---|
| 57 | <listitem>
|
---|
[de938a4e] | 58 | <para>
|
---|
[7a395d1] | 59 | Download MD5 sum: &mesa-md5sum;
|
---|
[de938a4e] | 60 | </para>
|
---|
[868c7c2] | 61 | </listitem>
|
---|
| 62 | <listitem>
|
---|
[de938a4e] | 63 | <para>
|
---|
[7a395d1] | 64 | Download size: &mesa-size;
|
---|
[de938a4e] | 65 | </para>
|
---|
[868c7c2] | 66 | </listitem>
|
---|
| 67 | <listitem>
|
---|
[de938a4e] | 68 | <para>
|
---|
[7a395d1] | 69 | Estimated disk space required: &mesa-buildsize;
|
---|
[de938a4e] | 70 | </para>
|
---|
[868c7c2] | 71 | </listitem>
|
---|
| 72 | <listitem>
|
---|
[de938a4e] | 73 | <para>
|
---|
[7a395d1] | 74 | Estimated build time: &mesa-time;
|
---|
[de938a4e] | 75 | </para>
|
---|
[868c7c2] | 76 | </listitem>
|
---|
| 77 | </itemizedlist>
|
---|
[1334c9a] | 78 |
|
---|
[625079b6] | 79 | <bridgehead renderas="sect3">Additional Downloads</bridgehead>
|
---|
[a07e9eb] | 80 | <itemizedlist spacing="compact">
|
---|
| 81 | <listitem>
|
---|
[eb425b4] | 82 | <para>
|
---|
| 83 | Recommended patch:
|
---|
[1334c9a] | 84 | <ulink url="&patch-root;/mesa-&mesa-version;-add_xdemos-1.patch"/>
|
---|
[7a395d1] | 85 | (installs 2 demo programs for testing Mesa - not needed if you
|
---|
[39dd48b] | 86 | install the <ulink url="ftp://ftp.freedesktop.org/pub/mesa/demos/">
|
---|
| 87 | mesa-demos</ulink> package)
|
---|
[ace536a] | 88 | </para>
|
---|
[eeb29511] | 89 | </listitem>
|
---|
[43149b8] | 90 | <listitem>
|
---|
| 91 | <para>
|
---|
| 92 | Required patch (for systems with NVIDIA GPUs):
|
---|
| 93 | <ulink url="&patch-root;/mesa-&mesa-version;-nouveau_fixes-1.patch"/>
|
---|
| 94 | </para>
|
---|
| 95 | </listitem>
|
---|
[eeb29511] | 96 | </itemizedlist>
|
---|
[1334c9a] | 97 |
|
---|
[7a395d1] | 98 | <bridgehead renderas="sect3">Mesa Dependencies</bridgehead>
|
---|
[868c7c2] | 99 |
|
---|
| 100 | <bridgehead renderas="sect4">Required</bridgehead>
|
---|
[7b74537e] | 101 | <para role="required">
|
---|
[df343952] | 102 | <xref linkend="xorg7-lib"/>,
|
---|
[e2aae21f] | 103 | <xref linkend="libdrm"/>, and
|
---|
| 104 | <xref linkend="Mako"/>
|
---|
[eb425b4] | 105 | </para>
|
---|
[868c7c2] | 106 |
|
---|
[606dfd4] | 107 | <bridgehead renderas="sect4">Recommended</bridgehead>
|
---|
[eb425b4] | 108 | <para role="recommended">
|
---|
[d2f50ba] | 109 |
|
---|
[cc405844] | 110 | <xref role="first" linkend="libva"/> (to provide VA-API support for some
|
---|
| 111 | gallium drivers, note that there is a circular dependency. You must
|
---|
[df343952] | 112 | build <application>libva</application> first without EGL and GLX support,
|
---|
[cc405844] | 113 | install this package, and rebuild <application>libva</application>),
|
---|
[9065a56b] | 114 | <xref linkend="libvdpau"/> (to build VDPAU drivers),
|
---|
[d2f50ba] | 115 | <xref linkend="llvm"/> (required for Gallium3D, nouveau, r300, and radeonsi
|
---|
| 116 | drivers and for swrast, the software rasterizer which is sometimes referred
|
---|
| 117 | to as llvmpipe. See <ulink role="nodep"
|
---|
[c6cb93b] | 118 | url="https://docs.mesa3d.org/systems.html"/> for more information), and
|
---|
[8558044] | 119 | <xref linkend="wayland-protocols"/> (required for
|
---|
[8e17e54] | 120 | <xref role="nodep" linkend='plasma5-build'/>,
|
---|
| 121 | <!-- <xref role="nodep" linkend='lxqt'/>, -->
|
---|
[d2f50ba] | 122 | GNOME, and recommended for <xref role="nodep" linkend='gtk3'/>)
|
---|
[606dfd4] | 123 | </para>
|
---|
[60bcf481] | 124 |
|
---|
[07584d8] | 125 | <bridgehead renderas="sect4">Optional</bridgehead>
|
---|
| 126 | <para role="optional">
|
---|
[57bcce9] | 127 | <xref linkend="libgcrypt"/>,
|
---|
[751dd1e] | 128 | <xref linkend="libunwind"/>,
|
---|
[b4d0b5a] | 129 | <xref linkend="lm_sensors"/> <!-- for libsensors according to Meson -->,
|
---|
[57bcce9] | 130 | <xref linkend="nettle"/>,
|
---|
[b4d0b5a] | 131 | <xref linkend="valgrind"/>,
|
---|
[58720a7b] | 132 | <ulink url="ftp://ftp.freedesktop.org/pub/mesa/demos/">mesa-demos</ulink>
|
---|
[1cdb1f7] | 133 | (provides more than 300 extra demos to test
|
---|
[973dabe9] | 134 | <application>Mesa</application>; this includes the same programs added by
|
---|
[b4d0b5a] | 135 | the patch above),
|
---|
[c18b8f23] | 136 | <ulink url="http://omxil.sourceforge.net/">Bellagio OpenMAX Integration
|
---|
[8558044] | 137 | Layer</ulink> (for mobile platforms),
|
---|
[b4d0b5a] | 138 | <ulink url="https://github.com/tizonia/tizonia-openmax-il/wiki/Tizonia-OpenMAX-IL/">
|
---|
[ef936e4] | 139 | libtizonia</ulink>, and
|
---|
| 140 | <ulink url="https://www.vulkan.org/">libvulkan</ulink> (for the zink driver)
|
---|
[07584d8] | 141 | </para>
|
---|
| 142 |
|
---|
[9065a56b] | 143 | <note>
|
---|
[fd2f9a2] | 144 | <para>
|
---|
[e4fbb24] | 145 | The instructions below assume that
|
---|
[d2f50ba] | 146 | <application>LLVM</application> with the r600/amdgpu and host backends
|
---|
| 147 | and run-time type information (RTTI - needed for nouveau) are installed.
|
---|
| 148 | You will need to modify the instructions if you
|
---|
| 149 | choose not to install all of these. For an explanation of Gallium3D see
|
---|
[e83a3bb] | 150 | <ulink url="https://en.wikipedia.org/wiki/Gallium3D"/>.
|
---|
[fd2f9a2] | 151 | </para>
|
---|
[9065a56b] | 152 | </note>
|
---|
[fd2f9a2] | 153 |
|
---|
[c5c2654] | 154 | <para condition="html" role="usernotes">User Notes:
|
---|
[6ff79cf5] | 155 | <ulink url="&blfs-wiki;/mesalib"/>
|
---|
[2993b2f] | 156 | </para>
|
---|
[868c7c2] | 157 | </sect2>
|
---|
| 158 |
|
---|
| 159 | <sect2 role="installation">
|
---|
[7a395d1] | 160 | <title>Installation of Mesa</title>
|
---|
[1334c9a] | 161 |
|
---|
[a07e9eb] | 162 | <para>
|
---|
[51c08f3] | 163 | If you have downloaded the xdemos patch (needed if testing the Xorg
|
---|
| 164 | installation per BLFS instructions), apply it by running the following
|
---|
| 165 | command:
|
---|
[a07e9eb] | 166 | </para>
|
---|
| 167 |
|
---|
[1334c9a] | 168 | <screen><userinput>patch -Np1 -i ../mesa-&mesa-version;-add_xdemos-1.patch</userinput></screen>
|
---|
| 169 |
|
---|
[054e926] | 170 | <!-- Note that freedreno, vc4, and virgl all need special support from
|
---|
[d2f50ba] | 171 | libdrm - renodr
|
---|
| 172 | For me, libdrm does not mention virgl, but mesa accepts it. AFAICS
|
---|
| 173 | freedreno is for qualcom hardware, libdrm will build for it on suitable
|
---|
| 174 | systems. VC4 is for the Broadcom VC4 used in the raspberry pi - ken -->
|
---|
| 175 |
|
---|
| 176 | <note>
|
---|
| 177 | <para>
|
---|
| 178 | The measurements above, and the Contents below, are for a full build.
|
---|
| 179 | Many people will not wish to install drivers they cannot use, so the
|
---|
| 180 | following paragraphs explain how to limit the drivers, and give an
|
---|
| 181 | example which can be be reduced or amended as necessary.
|
---|
| 182 | </para>
|
---|
| 183 | </note>
|
---|
| 184 |
|
---|
| 185 | <para>
|
---|
| 186 | Now, select the drivers you wish to install. For the X86 architecture, the
|
---|
[ef936e4] | 187 | available gallium drivers are auto (<emphasis>in 21.2.1 this does not select
|
---|
| 188 | crocus </emphasis>), <emphasis>or alternatively a choice from</emphasis>
|
---|
[9f777e1] | 189 | crocus, i915, iris, nouveau, r300, r600, radeonsi, svga, swrast, and virgl.
|
---|
| 190 | The latter can provide acceleration in <xref linkend="qemu"/> if that has
|
---|
| 191 | been linked against
|
---|
| 192 | <ulink url="https://gitlab.freedesktop.org/virgl/virglrenderer/~/releases/">virglrenderer</ulink>
|
---|
| 193 | (you will need a freedesktop.org account to get to that page, you can
|
---|
| 194 | download the 0.9.1 release without an account from
|
---|
| 195 | <ulink url="https://gitlab.freedesktop.org/virgl/virglrenderer/-/archive/0.9.1/virglrenderer-0.9.1.tar.bz2">virglrenderer-0.9.1</ulink>).
|
---|
| 196 | <!-- If you wish to build all available gallium drivers,
|
---|
[ef936e4] | 197 | use 'auto'. FIXME : does not build crocus in 21.2.1 -->
|
---|
[6ff79cf5] | 198 |
|
---|
| 199 | <!-- crocus was added to the default x86/x86_64 drivers for meson in the
|
---|
| 200 | master branch on 2021-08-31, at some point it will appear in a stable release -->
|
---|
[d2f50ba] | 201 | </para>
|
---|
| 202 |
|
---|
| 203 | <para>
|
---|
| 204 | The (non-gallium) DRI drivers available in X86 are auto, <emphasis>or
|
---|
| 205 | alternatively a choice from</emphasis> i915, i965, nouveau, r100, r200,
|
---|
| 206 | and swrast. Use 'auto' to build all available DRI drivers, or use an
|
---|
| 207 | empty string (DRI_DRIVERS="") if you wish to only build gallium drivers.
|
---|
| 208 | </para>
|
---|
| 209 |
|
---|
| 210 | <para>
|
---|
| 211 | The platforms ("window systems") available for X86 linux are x11, wayland,
|
---|
[8558044] | 212 | <!--drm,--> and surfaceless. By not specifying anything, the meson
|
---|
[17ae4374] | 213 | build-system will build for all these platforms if you have the
|
---|
| 214 | dependencies, identical to if you had specified '-Dplatforms=auto'.
|
---|
[d2f50ba] | 215 | </para>
|
---|
| 216 |
|
---|
| 217 | <para>
|
---|
| 218 | Modify the commands below for your desired drivers. The drivers listed
|
---|
| 219 | below will cover most modern video cards and virtual machines. For help in
|
---|
[c6cb93b] | 220 | selecting drivers see <ulink url="https://docs.mesa3d.org/systems.html"/>.
|
---|
[ef936e4] | 221 | <!-- these two don't seem to be mentioned in that mesa link -->
|
---|
| 222 | For intel drivers, specify crocus for i965 gen 4 through to haswell, iris
|
---|
| 223 | for broadwell and later.
|
---|
[d2f50ba] | 224 | </para>
|
---|
| 225 |
|
---|
| 226 | <note>
|
---|
| 227 | <para>
|
---|
| 228 | Although the nouveau drivers can be built for both gallium and dri, the
|
---|
| 229 | i915 driver can only be built for one or the other.
|
---|
| 230 | </para>
|
---|
| 231 | </note>
|
---|
| 232 |
|
---|
[ef936e4] | 233 | <screen><userinput>GALLIUM_DRV="crocus,i915,iris,nouveau,r600,radeonsi,svga,swrast,virgl"
|
---|
[d2f50ba] | 234 | DRI_DRIVERS="i965,nouveau"</userinput></screen>
|
---|
[973dabe9] | 235 |
|
---|
[43149b8] | 236 | <note>
|
---|
| 237 | <para>
|
---|
| 238 | If you are using a NVIDIA GPU in your system, a special patch has been
|
---|
| 239 | created that allows for proper multi-threading in the Mesa driver. This
|
---|
| 240 | fixes issues with multi-threaded Qt applications, as well as with
|
---|
| 241 | starting some GNOME Applications. This patch is also essential if you
|
---|
| 242 | plan to use KDE Plasma.
|
---|
| 243 |
|
---|
| 244 | Apply the patch using the following command:
|
---|
| 245 | </para>
|
---|
| 246 |
|
---|
| 247 | <screen><userinput remap="pre">patch -Np1 -i ../mesa-&mesa-version;-nouveau_fixes-1.patch</userinput></screen>
|
---|
| 248 | </note>
|
---|
| 249 |
|
---|
[eb425b4] | 250 | <para>
|
---|
[7a395d1] | 251 | Install <application>Mesa</application> by running the following
|
---|
[eb425b4] | 252 | commands:
|
---|
| 253 | </para>
|
---|
[868c7c2] | 254 |
|
---|
[b3f053c5] | 255 | <screen><userinput>mkdir build &&
|
---|
| 256 | cd build &&
|
---|
[a85e5ce] | 257 |
|
---|
[b3f053c5] | 258 | meson --prefix=$XORG_PREFIX \
|
---|
[3918112a] | 259 | --buildtype=release \
|
---|
[b3f053c5] | 260 | -Ddri-drivers=$DRI_DRIVERS \
|
---|
| 261 | -Dgallium-drivers=$GALLIUM_DRV \
|
---|
[2ca222a7] | 262 | -Dgallium-nine=false \
|
---|
[d2f50ba] | 263 | -Dglx=dri \
|
---|
[d7fcae6] | 264 | -Dvalgrind=disabled \
|
---|
| 265 | -Dlibunwind=disabled \
|
---|
[b3f053c5] | 266 | .. &&
|
---|
[a85e5ce] | 267 |
|
---|
[d2f50ba] | 268 | unset GALLIUM_DRV DRI_DRIVERS &&
|
---|
[b3f053c5] | 269 |
|
---|
| 270 | ninja</userinput></screen>
|
---|
[868c7c2] | 271 |
|
---|
[b3f053c5] | 272 | <para>
|
---|
[d2f50ba] | 273 | If you built the tests (see 'Command Explanations'), to run them issue:
|
---|
[f1a479c7] | 274 | <command>ninja test</command>. One test,
|
---|
| 275 | <application>mesa: intel/anv_state_pool</application>, is known to fail.
|
---|
[3713bc71] | 276 | <!-- All tests passed for me for 21.2.4 [pierre]
|
---|
[ef936e4] | 277 | All 33 subtests tests in the mesa:compiler+glsl / glsl compiler warnings
|
---|
[3713bc71] | 278 | suite are known to fail.-->
|
---|
[b3f053c5] | 279 | </para>
|
---|
[ef936e4] | 280 |
|
---|
[eb425b4] | 281 | <para>
|
---|
| 282 | Now, as the <systemitem class="username">root</systemitem> user:
|
---|
| 283 | </para>
|
---|
[ff55539b] | 284 |
|
---|
[b3f053c5] | 285 | <screen role="root"><userinput>ninja install</userinput></screen>
|
---|
[a07e9eb] | 286 |
|
---|
[eb425b4] | 287 | <para>
|
---|
[a07e9eb] | 288 | If desired, install the optional documentation by running
|
---|
| 289 | the following commands as the
|
---|
[eb425b4] | 290 | <systemitem class="username">root</systemitem> user:
|
---|
| 291 | </para>
|
---|
[91859cf] | 292 |
|
---|
[3713bc71] | 293 | <screen role="root"
|
---|
| 294 | remap="doc"><userinput>install -v -dm755 /usr/share/doc/mesa-&mesa-version; &&
|
---|
[b3f053c5] | 295 | cp -rfv ../docs/* /usr/share/doc/mesa-&mesa-version;</userinput></screen>
|
---|
[5a883bc4] | 296 |
|
---|
[868c7c2] | 297 | </sect2>
|
---|
| 298 |
|
---|
[a07e9eb] | 299 | <sect2 role="commands">
|
---|
| 300 | <title>Command Explanations</title>
|
---|
[d2f50ba] | 301 |
|
---|
[95e8211] | 302 | <para>
|
---|
[3918112a] | 303 | <parameter>--buildtype=release</parameter>: This switch ensures a
|
---|
[d2f50ba] | 304 | fully-optimized build, and disables debug assertions which will
|
---|
[ec77633] | 305 | severely slow down the libraries in certain use-cases. Without this
|
---|
| 306 | switch, build sizes can span into the 2GB range.
|
---|
[95e8211] | 307 | </para>
|
---|
| 308 |
|
---|
[b642036d] | 309 | <para>
|
---|
[d2f50ba] | 310 | <parameter>-Ddri-drivers="..."</parameter>: This parameter
|
---|
| 311 | controls which (non-gallium) dri drivers should be built.
|
---|
| 312 | </para>
|
---|
| 313 |
|
---|
| 314 | <para>
|
---|
| 315 | <parameter>-Dgallium-drivers="..."</parameter>: This parameter
|
---|
| 316 | controls which Gallium3D drivers should be built.
|
---|
| 317 | </para>
|
---|
| 318 |
|
---|
| 319 | <para>
|
---|
[42117d4e] | 320 | <parameter>-Dgallium-nine=false</parameter>: Prevents building
|
---|
| 321 | support for (MS Windows) games designed for DX9. Set it to true if
|
---|
| 322 | this support is desired.
|
---|
[d2f50ba] | 323 | </para>
|
---|
[d3ad4c0f] | 324 | <!--
|
---|
[d2f50ba] | 325 | <para>
|
---|
[d3ad4c0f] | 326 | <parameter>-Dosmesa=true</parameter>: This switch enables building
|
---|
[d2f50ba] | 327 | the <filename class="libraryfile">libOSMesa</filename> library and
|
---|
[018c4c52] | 328 | provides Gallium3D support in it. It requires the swrast gallium driver.
|
---|
[b642036d] | 329 | </para>
|
---|
[d3ad4c0f] | 330 | -->
|
---|
[0f09c2b8] | 331 | <!--
|
---|
[eb425b4] | 332 | <para>
|
---|
[d2f50ba] | 333 | <parameter>-Dplatforms="..."</parameter>: This parameter
|
---|
| 334 | controls which platforms EGL will be built for. Available
|
---|
| 335 | linux X86 platforms are drm, x11, wayland, and surfaceless.
|
---|
[eb425b4] | 336 | </para>
|
---|
[0f09c2b8] | 337 | -->
|
---|
[2993b2f] | 338 | <para>
|
---|
[d7fcae6] | 339 | <parameter>-Dvalgrind=disabled</parameter>: This parameter disables
|
---|
[d2f50ba] | 340 | the usage of Valgrind during the build process. Remove this parameter
|
---|
| 341 | if you have Valgrind installed, and wish to check for memory leaks.
|
---|
[2993b2f] | 342 | </para>
|
---|
| 343 |
|
---|
[42117d4e] | 344 | <para>
|
---|
[d7fcae6] | 345 | <parameter>-Dlibunwind=disabled</parameter>: This parameter disables
|
---|
[42117d4e] | 346 | the usage of libunwind.
|
---|
| 347 | </para>
|
---|
| 348 |
|
---|
[d2f50ba] | 349 | <!--
|
---|
[eb425b4] | 350 | <para>
|
---|
[b3f053c5] | 351 | <parameter>- -enable-xa</parameter>: This switch enables building the
|
---|
[eb425b4] | 352 | XA X Acceleration API (Required for VMware 3D Driver).
|
---|
| 353 | </para>
|
---|
| 354 |
|
---|
| 355 | <para>
|
---|
[b3f053c5] | 356 | <parameter>- -enable-gbm</parameter>: This switch enables building the
|
---|
[a07e9eb] | 357 | <application>Mesa</application> Graphics Buffer Manager library.
|
---|
| 358 | </para>
|
---|
[d2f50ba] | 359 | These two seem to be automatic in 19.0 - ken
|
---|
[a07e9eb] | 360 |
|
---|
[eb425b4] | 361 | <para>
|
---|
[b3f053c5] | 362 | <parameter>- -enable-glx-tls</parameter>: This switch enables TLS (Thread Local
|
---|
[4d92247] | 363 | Storage) support in GLX.
|
---|
[eb425b4] | 364 | </para>
|
---|
[b3f053c5] | 365 | -->
|
---|
[a07e9eb] | 366 | <para>
|
---|
[d2f50ba] | 367 | <option>-Dbuild-tests=true</option>: This option will cause the test code
|
---|
[63a0217] | 368 | to be enabled. To run the tests, issue: <command>ninja test</command>.
|
---|
[b4d0b5a] | 369 | </para>
|
---|
| 370 |
|
---|
[3713bc71] | 371 | <para>
|
---|
| 372 | <option>-Dvulkan-drivers=...</option>: This option allows choosing which
|
---|
| 373 | Vulkan drivers are built. Since those drivers depend on the
|
---|
| 374 | corresponding Gallium3D drivers, do not enable drivers that are not
|
---|
| 375 | enabled in Gallium3D drivers. Furthermore, since BLFS does not use
|
---|
| 376 | Vulkan, it is safe to leave the list of Vulkan drivers empty.
|
---|
| 377 | </para>
|
---|
| 378 |
|
---|
[371ff30] | 379 | </sect2>
|
---|
| 380 |
|
---|
[868c7c2] | 381 | <sect2 role="content">
|
---|
| 382 | <title>Contents</title>
|
---|
| 383 |
|
---|
| 384 | <segmentedlist>
|
---|
[1263ab1e] | 385 | <segtitle>Installed Programs</segtitle>
|
---|
[42117d4e] | 386 | <segtitle>Installed Libraries</segtitle><!-- in /usr/lib -->
|
---|
| 387 | <segtitle>Installed Drivers</segtitle><!-- in /usr/lib/<subdir> -->
|
---|
[ba2ac60] | 388 | <segtitle>Installed Directories</segtitle>
|
---|
[868c7c2] | 389 |
|
---|
| 390 | <seglistitem>
|
---|
[eb425b4] | 391 | <seg>
|
---|
| 392 | glxgears and glxinfo
|
---|
| 393 | </seg>
|
---|
[42117d4e] | 394 | <seg>
|
---|
| 395 | libEGL.so,
|
---|
| 396 | libGL.so,
|
---|
| 397 | libGLESv1_CM.so,
|
---|
| 398 | libGLESv2.so,
|
---|
[f72bfbe1] | 399 | <!-- libOSMesa.so,-->
|
---|
[42117d4e] | 400 | libXvMCnouveau.so,
|
---|
| 401 | libXvMCr600.so,
|
---|
| 402 | libgbm.so,
|
---|
| 403 | libglapi.so,
|
---|
| 404 | <!-- Begin Vulkan drivers -->
|
---|
| 405 | libvulkan_intel.so,
|
---|
| 406 | libvulkan_lvp.so,
|
---|
| 407 | libvulkan_radeon.so, and
|
---|
| 408 | <!-- End Vulkan drivers -->
|
---|
| 409 | libxatracker.so,
|
---|
| 410 | </seg>
|
---|
[eb425b4] | 411 | <seg>
|
---|
[3713bc71] | 412 | <!-- Begin gallium DRI drivers : this is the full set -->
|
---|
[42117d4e] | 413 | d3dadapter9.so (optional), <!-- For Windows games. This is DirectX's
|
---|
| 414 | Direct3D -->
|
---|
[ef936e4] | 415 | crocus_dri.so,
|
---|
[f72bfbe1] | 416 | <!-- i830_dri.so,-->
|
---|
[b3f053c5] | 417 | i915_dri.so,
|
---|
| 418 | i965_dri.so,
|
---|
[db480be] | 419 | iris_dri.so,
|
---|
[b3f053c5] | 420 | kms_swrast_dri.so,
|
---|
| 421 | nouveau_dri.so,
|
---|
[d2f50ba] | 422 | nouveau_drv_video.so,
|
---|
[b3f053c5] | 423 | nouveau_vieux_dri.so,
|
---|
[42117d4e] | 424 | r200_dri.so (optional),
|
---|
| 425 | r300_dri.so (optional),
|
---|
[d2f50ba] | 426 | r600_dri.so,
|
---|
| 427 | r600_drv_video.so,
|
---|
[bc38b45] | 428 | radeon_dri.so (optional),
|
---|
[b3f053c5] | 429 | radeonsi_dri.so,
|
---|
| 430 | radeonsi_drv_video.so,
|
---|
| 431 | swrast_dri.so,
|
---|
[d2f50ba] | 432 | virtio_gpu_dri.so,
|
---|
[696735e] | 433 | vmwgfx_dri.so,
|
---|
[e4fbb24] | 434 | <!-- End DRI Drivers -->
|
---|
| 435 | <!-- Begin VDPAU drivers -->
|
---|
[d2f50ba] | 436 | libvdpau_nouveau.so,
|
---|
[42117d4e] | 437 | libvdpau_r300.so (optional),
|
---|
[d2f50ba] | 438 | libvdpau_r600.so, and
|
---|
[b3f053c5] | 439 | libvdpau_radeonsi.so
|
---|
[e4fbb24] | 440 | <!-- End VDPAU drivers -->
|
---|
[ef936e4] | 441 | (Many of these drivers are hard-linked).
|
---|
[eb425b4] | 442 | </seg>
|
---|
| 443 | <seg>
|
---|
[3713bc71] | 444 | $XORG_PREFIX/{include/{EGL,GL,GLES,GLES2,GLES3,KHR},lib/{dri,vdpau}},
|
---|
[42117d4e] | 445 | $XORG_PREFIX/include/d3adapter (optional),
|
---|
| 446 | $XORG_PREFIX/lib/d3d (optional),
|
---|
[d2f50ba] | 447 | $XORG_PREFIX/share/drirc.d (contains workarounds for various applications,
|
---|
[f72bfbe1] | 448 | particularly browsers and games),
|
---|
[988edafd] | 449 | $XORG_PREFIX/share/vulkan,
|
---|
[880727e] | 450 | and
|
---|
[7a395d1] | 451 | /usr/share/doc/mesa-&mesa-version; (optional)
|
---|
[eb425b4] | 452 | </seg>
|
---|
[868c7c2] | 453 | </seglistitem>
|
---|
| 454 | </segmentedlist>
|
---|
[d3ef1e4] | 455 |
|
---|
[4437f63] | 456 | <variablelist>
|
---|
| 457 | <bridgehead renderas="sect3">Short Descriptions</bridgehead>
|
---|
| 458 | <?dbfo list-presentation="list"?>
|
---|
| 459 | <?dbhtml list-presentation="table"?>
|
---|
| 460 |
|
---|
| 461 | <varlistentry id="glxgears">
|
---|
[eb50ddde] | 462 | <term><command>glxgears</command></term>
|
---|
[4437f63] | 463 | <listitem>
|
---|
[eb425b4] | 464 | <para>
|
---|
| 465 | is a GL demo useful for troubleshooting graphics
|
---|
[4c24eb0a] | 466 | problems
|
---|
[eb425b4] | 467 | </para>
|
---|
[7a395d1] | 468 | <indexterm zone="mesa glxgears">
|
---|
[4437f63] | 469 | <primary sortas="b-glxgears">glxgears</primary>
|
---|
| 470 | </indexterm>
|
---|
| 471 | </listitem>
|
---|
| 472 | </varlistentry>
|
---|
| 473 |
|
---|
| 474 | <varlistentry id="glxinfo">
|
---|
[eb50ddde] | 475 | <term><command>glxinfo</command></term>
|
---|
[4437f63] | 476 | <listitem>
|
---|
[eb425b4] | 477 | <para>
|
---|
| 478 | is a diagnostic program that displays information about the
|
---|
[4c24eb0a] | 479 | graphics hardware and installed GL libraries
|
---|
[eb425b4] | 480 | </para>
|
---|
[7a395d1] | 481 | <indexterm zone="mesa glxinfo">
|
---|
[4437f63] | 482 | <primary sortas="b-glxinfo">glxinfo</primary>
|
---|
| 483 | </indexterm>
|
---|
| 484 | </listitem>
|
---|
| 485 | </varlistentry>
|
---|
| 486 |
|
---|
[25f6d94] | 487 | <varlistentry id="libEGL">
|
---|
[a07e9eb] | 488 | <term><filename class="libraryfile">libEGL.so</filename></term>
|
---|
[25f6d94] | 489 | <listitem>
|
---|
[eb425b4] | 490 | <para>
|
---|
[a07e9eb] | 491 | provides a native platform graphics interface as
|
---|
[4c24eb0a] | 492 | defined by the EGL-1.4 specification
|
---|
[eb425b4] | 493 | </para>
|
---|
[7a395d1] | 494 | <indexterm zone="mesa libEGL">
|
---|
[25f6d94] | 495 | <primary sortas="c-libGL">libEGL.so</primary>
|
---|
| 496 | </indexterm>
|
---|
| 497 | </listitem>
|
---|
| 498 | </varlistentry>
|
---|
| 499 |
|
---|
[a07e9eb] | 500 | <varlistentry id="libgbm">
|
---|
| 501 | <term><filename class="libraryfile">libgbm.so</filename></term>
|
---|
| 502 | <listitem>
|
---|
| 503 | <para>
|
---|
| 504 | is the <application>Mesa</application> Graphics Buffer
|
---|
[4c24eb0a] | 505 | Manager library
|
---|
[a07e9eb] | 506 | </para>
|
---|
[7a395d1] | 507 | <indexterm zone="mesa libgbm">
|
---|
[a07e9eb] | 508 | <primary sortas="c-libgbm">libgbm.so</primary>
|
---|
| 509 | </indexterm>
|
---|
| 510 | </listitem>
|
---|
| 511 | </varlistentry>
|
---|
| 512 |
|
---|
| 513 | <varlistentry id="libGLESv1_CM">
|
---|
| 514 | <term><filename class="libraryfile">libGLESv1_CM.so</filename></term>
|
---|
| 515 | <listitem>
|
---|
| 516 | <para>
|
---|
[4c24eb0a] | 517 | is the <application>Mesa</application> OpenGL ES 1.1 library
|
---|
[a07e9eb] | 518 | </para>
|
---|
[7a395d1] | 519 | <indexterm zone="mesa libGLESv1_CM">
|
---|
[a07e9eb] | 520 | <primary sortas="c-libGLESv1_CM">libGLESv1_CM.so</primary>
|
---|
| 521 | </indexterm>
|
---|
| 522 | </listitem>
|
---|
| 523 | </varlistentry>
|
---|
| 524 |
|
---|
| 525 | <varlistentry id="libGLES2">
|
---|
| 526 | <term><filename class="libraryfile">libGLES2.so</filename></term>
|
---|
| 527 | <listitem>
|
---|
| 528 | <para>
|
---|
[4c24eb0a] | 529 | is the <application>Mesa</application> OpenGL ES 2.0 library
|
---|
[a07e9eb] | 530 | </para>
|
---|
[7a395d1] | 531 | <indexterm zone="mesa libGLES2">
|
---|
[a07e9eb] | 532 | <primary sortas="c-libGLES2">libGLES2.so</primary>
|
---|
| 533 | </indexterm>
|
---|
| 534 | </listitem>
|
---|
| 535 | </varlistentry>
|
---|
| 536 |
|
---|
[ba2ac60] | 537 | <varlistentry id="libGL">
|
---|
[a07e9eb] | 538 | <term><filename class="libraryfile">libGL.so</filename></term>
|
---|
[ba2ac60] | 539 | <listitem>
|
---|
[eb425b4] | 540 | <para>
|
---|
[4c24eb0a] | 541 | is the main <application>Mesa</application> OpenGL library
|
---|
[eb425b4] | 542 | </para>
|
---|
[7a395d1] | 543 | <indexterm zone="mesa libGL">
|
---|
[ba2ac60] | 544 | <primary sortas="c-libGL">libGL.so</primary>
|
---|
| 545 | </indexterm>
|
---|
| 546 | </listitem>
|
---|
| 547 | </varlistentry>
|
---|
[f72bfbe1] | 548 | <!--
|
---|
[2993b2f] | 549 | <varlistentry id="libOSMesa">
|
---|
| 550 | <term><filename class="libraryfile">libOSMesa.so</filename></term>
|
---|
| 551 | <listitem>
|
---|
| 552 | <para>
|
---|
[4c24eb0a] | 553 | is the <application>Mesa</application> Off-screen Rendering library
|
---|
[2993b2f] | 554 | </para>
|
---|
[7a395d1] | 555 | <indexterm zone="mesa libOSMesa">
|
---|
[2993b2f] | 556 | <primary sortas="c-libOSMesa">libOSMesa.so</primary>
|
---|
| 557 | </indexterm>
|
---|
| 558 | </listitem>
|
---|
| 559 | </varlistentry>
|
---|
[f72bfbe1] | 560 | -->
|
---|
[4437f63] | 561 | </variablelist>
|
---|
| 562 |
|
---|
[868c7c2] | 563 | </sect2>
|
---|
[d3ef1e4] | 564 |
|
---|
[868c7c2] | 565 | </sect1>
|
---|