source: x/installing/mesalib-systemd.xml@ b9893e6

systemd-11177
Last change on this file since b9893e6 was 01b4c19a, checked in by Christopher Gregory <cjg@…>, 10 years ago

Seems the changes made to mesalib did not make it in transfer

git-svn-id: svn://svn.linuxfromscratch.org/BLFS/branches/systemd@13561 af4574ff-66df-0310-9fd7-8a98e5e911e0

  • Property mode set to 100644
File size: 16.2 KB
RevLine 
[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
[358cbee6]7 <!ENTITY mesalib-download-http " ">
[5cac005]8 <!ENTITY mesalib-download-ftp
[01b4c19a]9 "ftp://ftp.freedesktop.org/pub/mesa/&mesalib-version;/MesaLib-&mesalib-version;.tar.bz2">
10<!-- <!ENTITY mesalib-download-ftp
11 "ftp://ftp.freedesktop.org/pub/mesa/&mesalib-version;/MesaLib-&mesalib-version;.tar.bz2">-->
[3eb09b31]12 <!ENTITY mesalib-md5sum "11d3542da1b703618634be840a87b0b2">
[58720a7b]13 <!ENTITY mesalib-size "6.9 MB">
[3eb09b31]14 <!ENTITY mesalib-buildsize "313 MB (additional 1.6 MB for the docs)">
15 <!ENTITY mesalib-time "4.4 SBU">
[a07e9eb]16
[868c7c2]17]>
18
[4a1f001]19<sect1 id="mesalib" xreflabel="MesaLib-&mesalib-version;">
[868c7c2]20 <?dbhtml filename="mesalib.html"?>
21
22 <sect1info>
23 <othername>$LastChangedBy$</othername>
24 <date>$Date$</date>
25 </sect1info>
26
27 <title>MesaLib-&mesalib-version;</title>
28
[d8838ed5]29 <indexterm zone="mesalib">
[868c7c2]30 <primary sortas="a-MesaLib">MesaLib</primary>
31 </indexterm>
32
33 <sect2 role="package">
34 <title>Introduction to MesaLib</title>
35
[eb425b4]36 <para>
37 <application>Mesa</application> is an OpenGL compatible 3D graphics
38 library.
39 </para>
[868c7c2]40
[1aa6f05]41 &lfs75_checked;
[ca0c29cc]42
[868c7c2]43 <bridgehead renderas="sect3">Package Information</bridgehead>
44 <itemizedlist spacing="compact">
45 <listitem>
[de938a4e]46 <para>
47 Download (HTTP): <ulink url="&mesalib-download-http;"/>
48 </para>
[868c7c2]49 </listitem>
50 <listitem>
[de938a4e]51 <para>
52 Download (FTP): <ulink url="&mesalib-download-ftp;"/>
53 </para>
[868c7c2]54 </listitem>
55 <listitem>
[de938a4e]56 <para>
57 Download MD5 sum: &mesalib-md5sum;
58 </para>
[868c7c2]59 </listitem>
60 <listitem>
[de938a4e]61 <para>
62 Download size: &mesalib-size;
63 </para>
[868c7c2]64 </listitem>
65 <listitem>
[de938a4e]66 <para>
67 Estimated disk space required: &mesalib-buildsize;
68 </para>
[868c7c2]69 </listitem>
70 <listitem>
[de938a4e]71 <para>
72 Estimated build time: &mesalib-time;
73 </para>
[868c7c2]74 </listitem>
75 </itemizedlist>
76
[58720a7b]77 <bridgehead renderas="sect3">Additional Patch</bridgehead>
[a07e9eb]78 <itemizedlist spacing="compact">
79 <listitem>
[eb425b4]80 <para>
81 Recommended patch:
[fd2f9a2]82 <ulink url="&patch-root;/MesaLib-&mesalib-version;-add_xdemos-1.patch"/>
[a07e9eb]83 (Needed if testing the Xorg installation per BLFS instructions).
[ace536a]84 </para>
[eeb29511]85 </listitem>
86 </itemizedlist>
87
[868c7c2]88 <bridgehead renderas="sect3">MesaLib Dependencies</bridgehead>
89
90 <bridgehead renderas="sect4">Required</bridgehead>
[7b74537e]91 <para role="required">
[1e5a4c26]92 <xref linkend="libxml2"/>,
[56605b9]93 <xref linkend="xorg7-lib"/>, and
94 <xref linkend="libdrm"/>
[eb425b4]95 </para>
[868c7c2]96
[606dfd4]97 <bridgehead renderas="sect4">Recommended</bridgehead>
[eb425b4]98 <para role="recommended">
[01b4c19a]99 <xref linkend="elfutils"/> (required for radeon 3d drivers),
100 <xref linkend="libvdpau"/> (to build VDPAU drivers),
101 <xref linkend="llvm"/> (required for radeon 3d drivers and also for
[9065a56b]102 llvmpipe which is intended to be the fastest of the three sw rasterizers,
[01b4c19a]103 see <ulink url="http://www.mesa3d.org/faq.html#part3"></ulink> )
[606dfd4]104 </para>
[60bcf481]105
[07584d8]106 <bridgehead renderas="sect4">Optional</bridgehead>
107 <para role="optional">
[01b4c19a]108 <ulink url="ftp://ftp.freedesktop.org/pub/mesa/demos/">mesa-demos</ulink>
109 provides more than 300 extra demos to test
110 <application>MesaLib</application>; two of them overwrites the ones
111 included by
112 <filename>MesaLib-&mesalib-version;-add_xdemos-1.patch</filename>;
113 to avoid that, install in a different prefix or add, e.g.
114 <option>--program-prefix=md</option> to configure, and
115 <xref linkend="wayland"/>
[07584d8]116 </para>
117
[9065a56b]118 <note>
[fd2f9a2]119 <para>
[dae25ca5]120 The instructions below assume that <application>elfutils</application>
121 and <application>LLVM</application> are installed. You will
122 need to modify the instructions if you choose not to install them.
123 Please note that <application>elfutils</application> and
124 <application>LLVM</application> are <emphasis>required</emphasis>
[01b4c19a]125 for Radeon 3D drivers. For an explanation of gallium please see
[9065a56b]126 <ulink url="https://en.wikipedia.org/wiki/Gallium3D"></ulink>.
[fd2f9a2]127 </para>
[9065a56b]128 </note>
[fd2f9a2]129
[60bcf481]130 <note>
[eb425b4]131 <para>
132 The <application>libxml2</application>
133 <application>Python</application> module must have been built
134 during the installation of <application>libxml2</application>
135 or else <application>MesaLib</application> build will fail.
136 </para>
[60bcf481]137 </note>
138
[c5c2654]139 <para condition="html" role="usernotes">User Notes:
[2993b2f]140 <ulink url="&blfs-wiki;/mesalib"/>
141 </para>
[868c7c2]142 </sect2>
143
144 <sect2 role="installation">
145 <title>Installation of MesaLib</title>
146
[eb425b4]147 <note>
148 <para>
149 Unlike other packages, the
150 <filename>MesaLib-&mesalib-version;.tar.bz2</filename>
151 archive will extract to the
152 <filename class="directory">Mesa-&mesalib-version;</filename>
153 directory.
154 </para>
155 </note>
[38476a9]156
[a07e9eb]157 <para>
[5f91dfd]158 If you have downloaded the recommended patch, apply it by running the
[a07e9eb]159 following command:
160 </para>
161
[fd2f9a2]162<screen><userinput>patch -Np1 -i ../MesaLib-&mesalib-version;-add_xdemos-1.patch</userinput></screen>
[a07e9eb]163
[eb425b4]164 <para>
165 Install <application>MesaLib</application> by running the following
166 commands:
167 </para>
[868c7c2]168
[01b4c19a]169<screen><userinput>./autogen.sh CFLAGS="-O2" CXXFLAGS="-O2" \
170 --prefix=$XORG_PREFIX \
171 --sysconfdir=/etc \
172 --enable-texture-float \
173 --enable-gles1 \
174 --enable-gles2 \
175 --enable-osmesa \
176 --enable-xa \
177 --enable-gbm \
178 --disable-gallium-egl \
179 --enable-gallium-gbm \
180 --enable-shared-glapi \
181 --enable-glx-tls \
182 --with-egl-platforms="x11,wayland,drm" \
183 --with-gallium-drivers="nouveau,r300,r600,radeonsi,swrast" &amp;&amp;
[1199613]184make</userinput></screen>
[868c7c2]185
[a07e9eb]186 <para>
[5f91dfd]187 If you have applied the recommended patch, build the demo programs by
[a07e9eb]188 running the following command:
189 </para>
190
[01b4c19a]191<screen><userinput>make -C xdemos DEMOS_PREFIX=$XORG_PREFIX</userinput></screen>
[a07e9eb]192
[eb425b4]193 <para>
194 This package does not come with a test suite.
195 </para>
[ff55539b]196
[eb425b4]197 <para>
198 Now, as the <systemitem class="username">root</systemitem> user:
199 </para>
[ff55539b]200
[dae25ca5]201<screen role="root"><userinput>make install</userinput></screen>
[a07e9eb]202
203 <para>
[5f91dfd]204 If you have built the demo programs, install them by running the
[a07e9eb]205 following command as the
206 <systemitem class="username">root</systemitem> user:
207 </para>
208
[01b4c19a]209<screen role="root"><userinput>make -C xdemos DEMOS_PREFIX=$XORG_PREFIX install</userinput></screen>
[a07e9eb]210
[eb425b4]211 <para>
[a07e9eb]212 If desired, install the optional documentation by running
213 the following commands as the
[eb425b4]214 <systemitem class="username">root</systemitem> user:
215 </para>
[91859cf]216
[0d7900a]217<screen role="root"><userinput>install -v -dm755 /usr/share/doc/MesaLib-&mesalib-version; &amp;&amp;
[a07e9eb]218cp -rfv docs/* /usr/share/doc/MesaLib-&mesalib-version;</userinput></screen>
[5a883bc4]219
[868c7c2]220 </sect2>
221
[a07e9eb]222 <sect2 role="commands">
223 <title>Command Explanations</title>
224
[95e8211]225 <para>
226 <parameter>CFLAGS="-O2" CXXFLAGS="-O2"</parameter>: By default,
227 <application>Autoconf</application> sets CFLAGS and CXXFLAGS to
228 "-g -O2". That results in binaries and libraries being built with
[fd2f9a2]229 debugging symbols which make them bigger. Override the default
[4d92247]230 flags to omit -g compiler flag so the final libraries are smaller.
[95e8211]231 </para>
232
[eb425b4]233 <para>
[6825eb89]234 <parameter>--enable-texture-float</parameter>: This switch enables
[a07e9eb]235 floating-point textures and render buffers. Please consult
[eb425b4]236 <filename>docs/patents.txt</filename> to see if there are
237 any legal issues if you use this feature.
238 </para>
239
240 <para>
[6825eb89]241 <parameter>--enable-gles1</parameter>: This switch enables support for
[eb425b4]242 OpenGL ES 1.x API.
243 </para>
244
245 <para>
[6825eb89]246 <parameter>--enable-gles2</parameter>: This switch enables support for
[eb425b4]247 OpenGL ES 2.x API.
248 </para>
[9b3b6a45]249
[01b4c19a]250 <para>
251 <parameter>--disable-gallium-egl</parameter>: This switch disables
252 the egl_gallium loader so that on Intel 915 and 965 hardware we
253 avoid harmless error messages at runtime. The real Gallium drivers
254 will be built as DRI drivers, which egl_dri2 loader will load just fine.
255 </para>
256
[a07e9eb]257 <para>
[6825eb89]258 <parameter>--enable-openvg</parameter>: This switch enables support for
[01b4c19a]259 OpenVG API. In order to use this switch you will need to replace
260 <parameter>--disable-gallium-egl</parameter> with
261 <parameter>--enable-gallium-egl</parameter>.
[a07e9eb]262 </para>
263
[2993b2f]264 <para>
[6825eb89]265 <parameter>--enable-osmesa</parameter>: This switch enables building of
[abdc2e6]266 the <filename class="libraryfile">libOSMesa</filename> library.
[2993b2f]267 </para>
268
[eb425b4]269 <para>
[6825eb89]270 <parameter>--enable-xa</parameter>: This switch enables building of the
[eb425b4]271 XA X Acceleration API (Required for VMware 3D Driver).
272 </para>
273
274 <para>
[6825eb89]275 <parameter>--enable-gbm</parameter>: This switch enables building of the
[a07e9eb]276 <application>Mesa</application> Graphics Buffer Manager library.
277 </para>
278
279 <para>
[6825eb89]280 <parameter>--enable-gallium-egl</parameter>: This switch enables optional
[a07e9eb]281 EGL state tracker for Gallium.
[eb425b4]282 </para>
[bad6be19]283
[eb425b4]284 <para>
[6825eb89]285 <parameter>--enable-gallium-gbm</parameter>: This switch enables optional
[a07e9eb]286 GBM state tracker for Gallium.
287 </para>
288
[eb425b4]289 <para>
[6825eb89]290 <parameter>--enable-glx-tls</parameter>: This switch enables TLS (Thread Local
[4d92247]291 Storage) support in GLX.
[eb425b4]292 </para>
293
[01b4c19a]294 <para>
295 <parameter>--enable-shared-glapi</parameter>: This switch makes libGL
296 use the shared libglapi which is required if applications mix
297 OpenGL and OpenGL ES.
298 </para>
299
[a07e9eb]300 <para>
301 <parameter>--with-egl-platforms="..."</parameter>: This parameter
302 controls for which platforms EGL should be built. Available
[01b4c19a]303 platforms are drm, x11 and wayland.
[a07e9eb]304 </para>
305
[eb425b4]306 <para>
307 <parameter>--with-gallium-drivers="..."</parameter>: This parameter
[a07e9eb]308 controls which Gallium drivers should be built. Available drivers
[dae25ca5]309 are: i915, ilo, nouveau, r300, r600, radeonsi, svga and swrast. You
310 will need to remove r300, r600 and radeonsi from the list if you did
311 not install <application>elfutils</application> and
312 <application>LLVM</application>.
[eb425b4]313 </para>
[f49893b]314
[1f44775e]315 <para>
[dae25ca5]316 <option>--enable-r600-llvm-compiler</option>: Use this switch to
317 enable experimental R600 <application>LLVM</application> backend
318 for graphics shaders which claims to speed up the driver.
[1f44775e]319 </para>
320
[371ff30]321 </sect2>
322
[868c7c2]323 <sect2 role="content">
324 <title>Contents</title>
325
326 <segmentedlist>
[1263ab1e]327 <segtitle>Installed Programs</segtitle>
[868c7c2]328 <segtitle>Installed Libraries</segtitle>
[ba2ac60]329 <segtitle>Installed Directories</segtitle>
[868c7c2]330
331 <seglistitem>
[eb425b4]332 <seg>
333 glxgears and glxinfo
334 </seg>
335 <seg>
[01b4c19a]336 libGL.so,
337 libEGL.so,
338 libGLESv1_CM.so,
[5a14a19]339 libGLESv2.so,
[01b4c19a]340 libOSMesa.so,
341 libgbm.so,
342 libglapi.so,
343 libxatracker.so,
344 libwayland-egl.so,
345 <!--libXvMCnouveau.so and libXvMCr600.so--> and
346 several libs under /usr/lib/{dri,egl,gallium-pipe,gbm,vdpau}
[eb425b4]347 </seg>
348 <seg>
[01b4c19a]349 $XORG_PREFIX/include/EGL,
350 $XORG_PREFIX/include/GL,
351 $XORG_PREFIX/include/GLES,
352 $XORG_PREFIX/include/GLES2,
353 $XORG_PREFIX/include/GLES3,
354 $XORG_PREFIX/include/KHR,
355 $XORG_PREFIX/include/VG,
356 $XORG_PREFIX/lib/dri,
357 $XORG_PREFIX/lib/egl,
358 $XORG_PREFIX/lib/gallium-pipe,
359 $XORG_PREFIX/lib/gbm,
360 $XORG_PREFIX/lib/vdpau, and
[3a225a0]361 /usr/share/doc/MesaLib-&mesalib-version; (optional)
[eb425b4]362 </seg>
[868c7c2]363 </seglistitem>
364 </segmentedlist>
[d3ef1e4]365
[4437f63]366 <variablelist>
367 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
368 <?dbfo list-presentation="list"?>
369 <?dbhtml list-presentation="table"?>
370
371 <varlistentry id="glxgears">
[eb50ddde]372 <term><command>glxgears</command></term>
[4437f63]373 <listitem>
[eb425b4]374 <para>
375 is a GL demo useful for troubleshooting graphics
376 problems.
377 </para>
[d8838ed5]378 <indexterm zone="mesalib glxgears">
[4437f63]379 <primary sortas="b-glxgears">glxgears</primary>
380 </indexterm>
381 </listitem>
382 </varlistentry>
383
384 <varlistentry id="glxinfo">
[eb50ddde]385 <term><command>glxinfo</command></term>
[4437f63]386 <listitem>
[eb425b4]387 <para>
388 is a diagnostic program that displays information about the
389 graphics hardware and installed GL libraries.
390 </para>
[d8838ed5]391 <indexterm zone="mesalib glxinfo">
[4437f63]392 <primary sortas="b-glxinfo">glxinfo</primary>
393 </indexterm>
394 </listitem>
395 </varlistentry>
396
[25f6d94]397 <varlistentry id="libEGL">
[a07e9eb]398 <term><filename class="libraryfile">libEGL.so</filename></term>
[25f6d94]399 <listitem>
[eb425b4]400 <para>
[a07e9eb]401 provides a native platform graphics interface as
402 defined by the EGL-1.4 specification.
[eb425b4]403 </para>
[25f6d94]404 <indexterm zone="mesalib libEGL">
405 <primary sortas="c-libGL">libEGL.so</primary>
406 </indexterm>
407 </listitem>
408 </varlistentry>
409
[a07e9eb]410 <varlistentry id="libgbm">
411 <term><filename class="libraryfile">libgbm.so</filename></term>
412 <listitem>
413 <para>
414 is the <application>Mesa</application> Graphics Buffer
[0d7900a]415 Manager library.
[a07e9eb]416 </para>
417 <indexterm zone="mesalib libgbm">
418 <primary sortas="c-libgbm">libgbm.so</primary>
419 </indexterm>
420 </listitem>
421 </varlistentry>
422
423 <varlistentry id="libGLESv1_CM">
424 <term><filename class="libraryfile">libGLESv1_CM.so</filename></term>
425 <listitem>
426 <para>
427 is the <application>Mesa</application> OpenGL ES 1.1 library.
428 </para>
429 <indexterm zone="mesalib libGLESv1_CM">
430 <primary sortas="c-libGLESv1_CM">libGLESv1_CM.so</primary>
431 </indexterm>
432 </listitem>
433 </varlistentry>
434
435 <varlistentry id="libGLES2">
436 <term><filename class="libraryfile">libGLES2.so</filename></term>
437 <listitem>
438 <para>
439 is the <application>Mesa</application> OpenGL ES 2.0 library.
440 </para>
441 <indexterm zone="mesalib libGLES2">
442 <primary sortas="c-libGLES2">libGLES2.so</primary>
443 </indexterm>
444 </listitem>
445 </varlistentry>
446
[ba2ac60]447 <varlistentry id="libGL">
[a07e9eb]448 <term><filename class="libraryfile">libGL.so</filename></term>
[ba2ac60]449 <listitem>
[eb425b4]450 <para>
[a07e9eb]451 is the main <application>Mesa</application> OpenGL library.
[eb425b4]452 </para>
[ba2ac60]453 <indexterm zone="mesalib libGL">
454 <primary sortas="c-libGL">libGL.so</primary>
455 </indexterm>
456 </listitem>
457 </varlistentry>
458
[01b4c19a]459 <varlistentry id="libwayland-egl">
460 <term><filename class="libraryfile">libwayland-egl.so</filename></term>
[a07e9eb]461 <listitem>
462 <para>
[01b4c19a]463 is the <application>Mesa</application> Wayland framebuffer library.
[a07e9eb]464 </para>
[01b4c19a]465 <indexterm zone="mesalib libwayland-egl">
466 <primary sortas="c-libwayland-egl">libwayland-egl.so</primary>
[a07e9eb]467 </indexterm>
468 </listitem>
469 </varlistentry>
470
[2993b2f]471 <varlistentry id="libOSMesa">
472 <term><filename class="libraryfile">libOSMesa.so</filename></term>
473 <listitem>
474 <para>
475 is the <application>Mesa</application> Off-screen Rendering library.
476 </para>
477 <indexterm zone="mesalib libOSMesa">
478 <primary sortas="c-libOSMesa">libOSMesa.so</primary>
479 </indexterm>
480 </listitem>
481 </varlistentry>
482
[bad6be19]483 <varlistentry id="libxatracker">
[a07e9eb]484 <term><filename class="libraryfile">libxatracker.so</filename></term>
[ba2ac60]485 <listitem>
[eb425b4]486 <para>
[a07e9eb]487 is the Xorg Gallium3D acceleration library.
[eb425b4]488 </para>
[bad6be19]489 <indexterm zone="mesalib libxatracker">
490 <primary sortas="c-libxatracker">libxatracker.so</primary>
[ba2ac60]491 </indexterm>
492 </listitem>
493 </varlistentry>
[4437f63]494 </variablelist>
495
[868c7c2]496 </sect2>
[d3ef1e4]497
[868c7c2]498</sect1>
Note: See TracBrowser for help on using the repository browser.