[868c7c2] | 1 | <?xml version="1.0" encoding="ISO-8859-1"?>
|
---|
| 2 | <!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN"
|
---|
| 3 | "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
|
---|
| 4 | <!ENTITY % general-entities SYSTEM "../../general.ent">
|
---|
| 5 | %general-entities;
|
---|
| 6 |
|
---|
[15b3bc29] | 7 | <!ENTITY mesalib-download-http "http://downloads.sourceforge.net/mesa3d/MesaLib-&mesalib-version;.tar.bz2">
|
---|
[868c7c2] | 8 | <!ENTITY mesalib-download-ftp " ">
|
---|
[7be99f2c] | 9 | <!ENTITY mesalib-md5sum "61beda590bfc5b4a12e979d5f2d70d7a">
|
---|
| 10 | <!ENTITY mesalib-size "3.3 MB">
|
---|
| 11 | <!ENTITY mesalib-buildsize "823 MB">
|
---|
| 12 | <!ENTITY mesalib-time "1.7 SBU">
|
---|
[868c7c2] | 13 | ]>
|
---|
| 14 |
|
---|
[4a1f001] | 15 | <sect1 id="mesalib" xreflabel="MesaLib-&mesalib-version;">
|
---|
[868c7c2] | 16 | <?dbhtml filename="mesalib.html"?>
|
---|
| 17 |
|
---|
| 18 | <sect1info>
|
---|
| 19 | <othername>$LastChangedBy$</othername>
|
---|
| 20 | <date>$Date$</date>
|
---|
| 21 | </sect1info>
|
---|
| 22 |
|
---|
| 23 | <title>MesaLib-&mesalib-version;</title>
|
---|
| 24 |
|
---|
[d8838ed5] | 25 | <indexterm zone="mesalib">
|
---|
[868c7c2] | 26 | <primary sortas="a-MesaLib">MesaLib</primary>
|
---|
| 27 | </indexterm>
|
---|
| 28 |
|
---|
| 29 | <sect2 role="package">
|
---|
| 30 | <title>Introduction to MesaLib</title>
|
---|
| 31 |
|
---|
| 32 | <para><application>Mesa</application> is an OpenGL compatible 3-D graphics
|
---|
| 33 | library.</para>
|
---|
| 34 |
|
---|
| 35 | <bridgehead renderas="sect3">Package Information</bridgehead>
|
---|
| 36 | <itemizedlist spacing="compact">
|
---|
| 37 | <listitem>
|
---|
| 38 | <para>Download (HTTP): <ulink url="&mesalib-download-http;"/></para>
|
---|
| 39 | </listitem>
|
---|
| 40 | <listitem>
|
---|
| 41 | <para>Download (FTP): <ulink url="&mesalib-download-ftp;"/></para>
|
---|
| 42 | </listitem>
|
---|
| 43 | <listitem>
|
---|
| 44 | <para>Download MD5 sum: &mesalib-md5sum;</para>
|
---|
| 45 | </listitem>
|
---|
| 46 | <listitem>
|
---|
[7be99f2c] | 47 | <para>Download size (including recommended download):
|
---|
[868c7c2] | 48 | &mesalib-size;</para>
|
---|
| 49 | </listitem>
|
---|
| 50 | <listitem>
|
---|
[7be99f2c] | 51 | <para>Estimated disk space required (including recommended download):
|
---|
[868c7c2] | 52 | &mesalib-buildsize;</para>
|
---|
| 53 | </listitem>
|
---|
| 54 | <listitem>
|
---|
[7be99f2c] | 55 | <para>Estimated build time (including recommended download):
|
---|
[868c7c2] | 56 | &mesalib-time;</para>
|
---|
| 57 | </listitem>
|
---|
| 58 | </itemizedlist>
|
---|
| 59 |
|
---|
| 60 | <bridgehead renderas="sect3">MesaLib Dependencies</bridgehead>
|
---|
| 61 |
|
---|
| 62 | <bridgehead renderas="sect4">Required</bridgehead>
|
---|
[c23b62b] | 63 | <para role="required"><xref linkend="xorg7-lib"/>,
|
---|
[2128523] | 64 | <xref linkend="xorg7-util"/>, and
|
---|
| 65 | <xref linkend="libdrm"/></para>
|
---|
[868c7c2] | 66 |
|
---|
[531e09e] | 67 | <note>
|
---|
[06be400] | 68 | <para>It is not recommended to build a newer version of
|
---|
[531e09e] | 69 | <application>Mesa</application> with <xref linkend="xfree86"/> or
|
---|
| 70 | <xref linkend="xorg"/>.</para>
|
---|
| 71 | </note>
|
---|
| 72 |
|
---|
[3f72a148] | 73 | <bridgehead renderas="sect3">Recommended Download</bridgehead>
|
---|
[d3ef1e4] | 74 | <para><ulink
|
---|
[15b3bc29] | 75 | url="http://downloads.sourceforge.net/mesa3d/MesaDemos-&mesalib-version;.tar.bz2">MesaDemos-&mesalib-version;</ulink>
|
---|
[d9c80e1] | 76 | provides a demo and a diagnostic program to verify that GL is working
|
---|
[4437f63] | 77 | properly.</para>
|
---|
[d3ef1e4] | 78 |
|
---|
[3f72a148] | 79 | <bridgehead renderas="sect3">Optional Download</bridgehead>
|
---|
| 80 | <para><ulink
|
---|
[15b3bc29] | 81 | url="http://downloads.sourceforge.net/mesa3d/MesaGLUT-&mesalib-version;.tar.bz2">MesaGLUT-&mesalib-version;</ulink>
|
---|
[3f72a148] | 82 | provides a working <filename class='libraryfile'>libglut</filename>.</para>
|
---|
| 83 |
|
---|
[d3ef1e4] | 84 | <note>
|
---|
| 85 | <para>You should extract all three tarballs from the same toplevel
|
---|
[d9c80e1] | 86 | directory. All three files will extract to the
|
---|
[d3ef1e4] | 87 | <filename class="directory">Mesa-&mesalib-version;</filename>
|
---|
| 88 | directory.</para>
|
---|
| 89 | </note>
|
---|
[868c7c2] | 90 |
|
---|
[c5c2654] | 91 | <para condition="html" role="usernotes">User Notes:
|
---|
| 92 | <ulink url="&blfs-wiki;/mesalib"/></para>
|
---|
| 93 |
|
---|
[868c7c2] | 94 | </sect2>
|
---|
| 95 |
|
---|
| 96 | <sect2 role="installation">
|
---|
| 97 | <title>Installation of MesaLib</title>
|
---|
| 98 |
|
---|
[38476a9] | 99 | <xi:include xmlns:xi="http://www.w3.org/2003/XInclude"
|
---|
| 100 | href="../../xincludes/xorg7-only.xml"/>
|
---|
| 101 |
|
---|
[78f4c3e] | 102 | <para>You will need to adjust the commands below to reflect the
|
---|
[c23b62b] | 103 | installation prefix of the X Window System. First, correct several
|
---|
| 104 | hard coded directories in the source files with the following
|
---|
[531e09e] | 105 | commands:</para>
|
---|
[78f4c3e] | 106 |
|
---|
[6291d0e] | 107 | <screen><userinput>find . -type f -exec sed -i "s@/usr/X11R6@$XORG_PREFIX@g" {} \; &&
|
---|
[7be99f2c] | 108 | sed -i 's@lib/modules@lib/X11/modules@' src/glx/x11/dri_glx.c &&
|
---|
[4e88613] | 109 | sed -i 's@lib/modules@lib/X11/modules@' \
|
---|
| 110 | src/mesa/drivers/dri/Makefile.template</userinput></screen>
|
---|
[868c7c2] | 111 |
|
---|
[864b24de] | 112 | <para>Fix an error with output redirection if <command>/bin/sh</command>
|
---|
[3a7d9e51] | 113 | is not the <application>Bash</application> shell on your system:</para>
|
---|
| 114 |
|
---|
| 115 | <screen><userinput>sed -i 's%>& /dev/null%>/dev/null%' src/mesa/drivers/dri/Makefile.template</userinput></screen>
|
---|
| 116 |
|
---|
[3f72a148] | 117 | <para>Build <application>MesaLib</application>
|
---|
[d3ef1e4] | 118 | by running the following command:</para>
|
---|
[868c7c2] | 119 |
|
---|
[037012f] | 120 | <screen><userinput>make OPT_FLAGS="-O2 -fno-strict-aliasing" linux-dri-x86</userinput></screen>
|
---|
[868c7c2] | 121 |
|
---|
| 122 | <para>This package does not come with a test suite.</para>
|
---|
| 123 |
|
---|
[3f72a148] | 124 | <para>Now, as the <systemitem class="username">root</systemitem> user,
|
---|
[c23b62b] | 125 | issue the following commands to install
|
---|
[531e09e] | 126 | <application>MesaLib</application>:</para>
|
---|
[868c7c2] | 127 |
|
---|
[6291d0e] | 128 | <screen role="root"><userinput>bin/installmesa $XORG_PREFIX</userinput></screen>
|
---|
[ff55539b] | 129 |
|
---|
[c23b62b] | 130 | <para>While still the root user, install the modules for
|
---|
[ff55539b] | 131 | Xorg-&xorg7-version; with the following commands.</para>
|
---|
| 132 |
|
---|
[6291d0e] | 133 | <screen role="root"><userinput>mkdir -v -p $XORG_PREFIX/lib/X11/modules/dri &&
|
---|
| 134 | install -v -m755 lib/*dri* $XORG_PREFIX/lib/X11/modules/dri</userinput></screen>
|
---|
[868c7c2] | 135 |
|
---|
[a6c2aff2] | 136 | <para>If you've extracted the Demos package as well, then
|
---|
[868c7c2] | 137 | build the test programs with the following commands:</para>
|
---|
| 138 |
|
---|
[a6c2aff2] | 139 | <screen><userinput>sed -i 's@-l$(GLUT_LIB)@@g' configs/default &&
|
---|
| 140 | cd progs/xdemos &&
|
---|
[868c7c2] | 141 | make PROGS='glxinfo glxgears'</userinput></screen>
|
---|
| 142 |
|
---|
[d3ef1e4] | 143 | <para>Install the demos as the
|
---|
[531e09e] | 144 | <systemitem class="username">root</systemitem> user:</para>
|
---|
[868c7c2] | 145 |
|
---|
[6291d0e] | 146 | <screen role="root"><userinput>install -v -m755 glxinfo glxgears $XORG_PREFIX/bin</userinput></screen>
|
---|
[868c7c2] | 147 |
|
---|
[d3ef1e4] | 148 | <note>
|
---|
[c23b62b] | 149 | <para>Do not remove the Mesa source tree yet, it will be required to
|
---|
[531e09e] | 150 | build the <xref linkend="xorg7-server"/>.</para>
|
---|
[d3ef1e4] | 151 | </note>
|
---|
[868c7c2] | 152 |
|
---|
[d9c80e1] | 153 | <para>Finally, if installing to any prefix other than
|
---|
[3735050] | 154 | <filename class="directory">/usr</filename>, you should create symlinks
|
---|
| 155 | to the GL headers in <filename class="directory">/usr/include</filename>.
|
---|
| 156 | Execute the following command as the
|
---|
| 157 | <systemitem class="username">root</systemitem> user:</para>
|
---|
| 158 |
|
---|
[5e8be1c] | 159 | <screen role="root"><userinput>ln -s -v $XORG_PREFIX/include/GL /usr/include</userinput></screen>
|
---|
[3735050] | 160 |
|
---|
[868c7c2] | 161 | </sect2>
|
---|
| 162 |
|
---|
[371ff30] | 163 | <sect2 role="commands">
|
---|
| 164 | <title>Command Explanations</title>
|
---|
| 165 |
|
---|
[c23b62b] | 166 | <para><command>find...sed -i
|
---|
| 167 | "s@/usr/X11R6@$XORG_PREFIX@"...</command>:
|
---|
[78f4c3e] | 168 | This command corrects several hard coded references to the X11R6 default
|
---|
[371ff30] | 169 | installation path.</para>
|
---|
| 170 |
|
---|
[d9c80e1] | 171 | <para><command>sed -i 's@lib/modules@lib/X11/modules@'
|
---|
[371ff30] | 172 | src/glx/x11/dri_glx.c</command>: This command corrects a hard coded
|
---|
| 173 | reference to the module directory.</para>
|
---|
| 174 |
|
---|
[037012f] | 175 | <para><command>make OPT_FLAGS=... linux-dri-x86</command>: A bug where
|
---|
| 176 | OpenGL applications are shifted to the left by 50% can be worked around
|
---|
| 177 | by adding <option>-fno-strict-aliasing</option> to the compiler flags.
|
---|
| 178 | Also, the <option>linux-dri-x86</option> target is specified to use a
|
---|
| 179 | few other helpful flags in addition to the defaults. See the other
|
---|
| 180 | targets in the <filename class="directory">configs</filename> directory
|
---|
| 181 | if your architecture is not x86.</para>
|
---|
| 182 |
|
---|
[371ff30] | 183 | <para><command>bin/installmesa</command>: Mesa uses a custom installation
|
---|
[d9c80e1] | 184 | script as opposed to the normal <parameter>install</parameter> make
|
---|
[371ff30] | 185 | target.</para>
|
---|
| 186 |
|
---|
[d9c80e1] | 187 | <para><command>install -v -m755 lib/*dri*
|
---|
[c23b62b] | 188 | $XORG_PREFIX/lib/X11/modules/dri</command>:
|
---|
[78f4c3e] | 189 | installs the DRI modules.</para>
|
---|
[371ff30] | 190 |
|
---|
[a6c2aff2] | 191 | <para><command>sed -i 's@-l$(GLUT_LIB)@@g' configs/default</command>:
|
---|
| 192 | disables linking against GLUT libraries for the demo programs.</para>
|
---|
| 193 |
|
---|
[371ff30] | 194 | <para><command>make PROGS='glxinfo glxgears'</command>: build only
|
---|
| 195 | the glxinfo and glxgears programs.</para>
|
---|
| 196 |
|
---|
[c23b62b] | 197 | <para><command>install -v -m755 glxinfo glxgears
|
---|
[6291d0e] | 198 | $XORG_PREFIX/bin</command>:
|
---|
[371ff30] | 199 | Installs only the glxinfo and glxgears programs.</para>
|
---|
| 200 |
|
---|
| 201 | </sect2>
|
---|
| 202 |
|
---|
[868c7c2] | 203 | <sect2 role="content">
|
---|
| 204 | <title>Contents</title>
|
---|
| 205 |
|
---|
| 206 | <segmentedlist>
|
---|
| 207 | <segtitle>Installed Programs</segtitle>
|
---|
| 208 | <segtitle>Installed Libraries</segtitle>
|
---|
| 209 | <segtitle>Installed Directories</segtitle>
|
---|
| 210 |
|
---|
| 211 | <seglistitem>
|
---|
[d3ef1e4] | 212 | <seg>glxgears and glxinfo</seg>
|
---|
[c5c2654] | 213 | <seg>libGL.{so,a}, libGLU.{so,a}, libGLw.{so,a}, libglut.{so,a} and
|
---|
[868c7c2] | 214 | *_dri.so</seg>
|
---|
| 215 | <seg>$XORG_PREFIX/lib/modules/dri</seg>
|
---|
| 216 | </seglistitem>
|
---|
| 217 | </segmentedlist>
|
---|
[d3ef1e4] | 218 |
|
---|
[4437f63] | 219 | <variablelist>
|
---|
| 220 | <bridgehead renderas="sect3">Short Descriptions</bridgehead>
|
---|
| 221 | <?dbfo list-presentation="list"?>
|
---|
| 222 | <?dbhtml list-presentation="table"?>
|
---|
| 223 |
|
---|
| 224 | <varlistentry id="glxgears">
|
---|
| 225 | <term><filename>glxgears</filename></term>
|
---|
| 226 | <listitem>
|
---|
| 227 | <para>a GL demo useful for troubleshooting graphics problems.</para>
|
---|
[d8838ed5] | 228 | <indexterm zone="mesalib glxgears">
|
---|
[4437f63] | 229 | <primary sortas="b-glxgears">glxgears</primary>
|
---|
| 230 | </indexterm>
|
---|
| 231 | </listitem>
|
---|
| 232 | </varlistentry>
|
---|
| 233 |
|
---|
| 234 | <varlistentry id="glxinfo">
|
---|
| 235 | <term><filename>glxinfo</filename></term>
|
---|
| 236 | <listitem>
|
---|
[d9c80e1] | 237 | <para>a diagnostic program that displays information about the
|
---|
[4437f63] | 238 | graphics hardware and installed GL libraries.</para>
|
---|
[d8838ed5] | 239 | <indexterm zone="mesalib glxinfo">
|
---|
[4437f63] | 240 | <primary sortas="b-glxinfo">glxinfo</primary>
|
---|
| 241 | </indexterm>
|
---|
| 242 | </listitem>
|
---|
| 243 | </varlistentry>
|
---|
| 244 |
|
---|
| 245 | </variablelist>
|
---|
| 246 |
|
---|
[868c7c2] | 247 | </sect2>
|
---|
[d3ef1e4] | 248 |
|
---|
[868c7c2] | 249 | </sect1>
|
---|