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 | ]>
|
---|
7 |
|
---|
8 | <sect1 id="xorg7" xreflabel="Xorg-&xorg7-version;">
|
---|
9 | <?dbhtml filename="xorg7.html"?>
|
---|
10 |
|
---|
11 | <sect1info>
|
---|
12 | <othername>$LastChangedBy$</othername>
|
---|
13 | <date>$Date$</date>
|
---|
14 | <!-- <keywordset>
|
---|
15 | <keyword role="package">X11R&xorg7-version;-src.tar</keyword>
|
---|
16 | <keyword role="ftpdir">Xorg7</keyword>
|
---|
17 | </keywordset>
|
---|
18 | ########## Need a way to fix this on the mirrors ##########
|
---|
19 | ##### Maybe a single tarball is the way to handle it ######
|
---|
20 | -->
|
---|
21 |
|
---|
22 |
|
---|
23 | </sect1info>
|
---|
24 |
|
---|
25 | <title>Xorg-&xorg7-version;</title>
|
---|
26 |
|
---|
27 | <indexterm zone="xorg7">
|
---|
28 | <primary sortas="a-xorg7">Xorg</primary>
|
---|
29 | </indexterm>
|
---|
30 |
|
---|
31 | <sect2 role="package">
|
---|
32 | <title>Introduction to Xorg</title>
|
---|
33 |
|
---|
34 | <para><application>Xorg</application> is a freely redistributable,
|
---|
35 | open-source implementation of the <application>X</application> Window
|
---|
36 | System. This system provides a client/server interface between display
|
---|
37 | hardware (the mouse, keyboard, and video displays) and the desktop
|
---|
38 | environment, while also providing both the windowing infrastructure and a
|
---|
39 | standardized application interface (API).</para>
|
---|
40 |
|
---|
41 | <bridgehead renderas="sect3">Xorg Dependencies</bridgehead>
|
---|
42 |
|
---|
43 | <bridgehead renderas="sect4">Required</bridgehead>
|
---|
44 | <para role="required"><xref linkend="fontconfig"/>,
|
---|
45 | <xref linkend="libpng"/>, and
|
---|
46 | <xref linkend="pkgconfig"/></para>
|
---|
47 |
|
---|
48 | <bridgehead renderas="sect4">Optional</bridgehead>
|
---|
49 | <para role="optional"><xref linkend="linux-pam"/></para>
|
---|
50 |
|
---|
51 | <para condition="html" role="usernotes">User Notes:
|
---|
52 | <ulink url='&blfs-wiki;/Xorg-&xorg7-version;'/></para>
|
---|
53 |
|
---|
54 | <bridgehead renderas="sect3">Xorg Download and Installation
|
---|
55 | Instructions</bridgehead>
|
---|
56 |
|
---|
57 | <para>With the modular build system, it is no longer possible to download
|
---|
58 | the entire package in a single file. In fact, there may be as many as
|
---|
59 | 280 files that need to be fetched from the download location. To assist
|
---|
60 | with such a large task, it is strongly recommended to install
|
---|
61 | <xref linkend="wget"/> for downloading the needed files. A complete
|
---|
62 | <application>wget</application> script is available for each section at
|
---|
63 | <ulink
|
---|
64 | url="http://anduin.linuxfromscratch.org/sources/BLFS/svn/x/wget/"/>.</para>
|
---|
65 |
|
---|
66 | <note>
|
---|
67 | <para>Even if you intend to download only the necessary packages, you
|
---|
68 | should download the wget scripts and use the package versions listed.
|
---|
69 | Newer packages are likey intended for the next release of
|
---|
70 | <application>Xorg</application> and have already proven to be
|
---|
71 | incompatible with the current version of
|
---|
72 | <application>GTK+</application>.</para>
|
---|
73 | </note>
|
---|
74 |
|
---|
75 | <para>Given the number of packages available, deciding which packages you
|
---|
76 | need to install for your particular setup may seem a bit overwhelming at
|
---|
77 | first. Take a look at<ulink
|
---|
78 | url="http://lists.x.org/archives/xorg-modular/2005-November/000801.html">
|
---|
79 | this thread</ulink> to get an idea of what you will need. If you are
|
---|
80 | unsure, you should install all packages at the cost of extra
|
---|
81 | disk space.</para>
|
---|
82 |
|
---|
83 | <note>
|
---|
84 | <para>The installed size of <application>Xorg</application> can
|
---|
85 | be reduced considerably by installing only the packages that you will
|
---|
86 | need and use. However, the BLFS book cannot account for all dependencies
|
---|
87 | and build options for individual <application>Xorg</application>
|
---|
88 | packages. The instructions assume that all packages have been built
|
---|
89 | from a particular group unless otherwise noted. A
|
---|
90 | <ulink url="http://wiki.linuxfromscratch.org/blfs/wiki/Xorg-&xorg7-version;">
|
---|
91 | wiki</ulink> page containing dependency information, for users who wish
|
---|
92 | to cut down on the installed size of <application>Xorg</application>, is
|
---|
93 | under development. You are encouraged to add to these
|
---|
94 | pages if you discover additional information that may be helpful to
|
---|
95 | other users.</para>
|
---|
96 | </note>
|
---|
97 |
|
---|
98 | <para>Additionally, because of the large number of repetitive commands,
|
---|
99 | you are encouraged to script the build. For most sections, you can use
|
---|
100 | the following commands to compile and install all packages in your build
|
---|
101 | directory:</para>
|
---|
102 |
|
---|
103 | <screen>for package in *.tar.bz2
|
---|
104 | do
|
---|
105 | packagedir=`echo $package | sed 's/.tar.bz2//'`
|
---|
106 | tar -xf $package &&
|
---|
107 | cd $packagedir &&
|
---|
108 | ./configure $XORG_CONFIG &&
|
---|
109 | make &&
|
---|
110 | make install
|
---|
111 | if [ $? -ne 0 ]; then
|
---|
112 | break #stop the build if the previous command failed
|
---|
113 | fi
|
---|
114 | cd .. &&
|
---|
115 | rm -rf $packagedir
|
---|
116 | done 2>&1 | tee -a ../xorg-compile.log #log the entire loop</screen>
|
---|
117 |
|
---|
118 | </sect2>
|
---|
119 |
|
---|
120 | <sect2>
|
---|
121 | <title>Setting up the Xorg Build Environment</title>
|
---|
122 |
|
---|
123 | <para>First, you'll need to create a working directory:</para>
|
---|
124 |
|
---|
125 | <screen><userinput>mkdir xc &&
|
---|
126 | cd xc</userinput></screen>
|
---|
127 |
|
---|
128 | <para>As with previous releases of the X Window System, it may be
|
---|
129 | desirable to install <application>Xorg</application> into an alternate
|
---|
130 | prefix. This is no longer common practice among Linux distributions.
|
---|
131 | The common installation prefix for <application>Xorg</application> on
|
---|
132 | Linux is <filename class="directory">/usr</filename>. There is no
|
---|
133 | standard alternate prefix, nor is there any exception in the current
|
---|
134 | revision of the Filesystem Hierarchy Standard for Release 7 of the X
|
---|
135 | Window System. Alan Coopersmith of Sun Microsystems, has recently
|
---|
136 | stated "At Sun, we were using
|
---|
137 | <filename class="directory">/usr/X11</filename> and plan to stick with
|
---|
138 | it." Only the <filename class="directory">/opt/*</filename> prefix or
|
---|
139 | the <filename class="directory">/usr</filename> prefix adhere to the
|
---|
140 | current FHS guidelines.</para>
|
---|
141 |
|
---|
142 | <para>Choose your installation prefix, and set the
|
---|
143 | <envar>XORG_PREFIX</envar> variable with the following
|
---|
144 | command:</para>
|
---|
145 |
|
---|
146 | <screen><userinput>export XORG_PREFIX="<replaceable></usr></replaceable>"</userinput></screen>
|
---|
147 |
|
---|
148 | <para>Throughout these instructions, you will use the same three
|
---|
149 | <command>configure</command> switches for all of the packages. Create the
|
---|
150 | <envar>XORG_CONFIG</envar> variable to use for substitution:</para>
|
---|
151 |
|
---|
152 | <screen><userinput>export XORG_CONFIG="--prefix=$XORG_PREFIX --sysconfdir=/etc --localstatedir=/var"</userinput></screen>
|
---|
153 |
|
---|
154 | <note>
|
---|
155 | <para>If you've decided to use an alternate prefix, be sure to add
|
---|
156 | <filename class="directory"><replaceable></usr></replaceable>/lib/pkgconfig</filename>
|
---|
157 | to your <envar>PKG_CONFIG_PATH</envar> variable.</para>
|
---|
158 | </note>
|
---|
159 |
|
---|
160 | </sect2>
|
---|
161 |
|
---|
162 | <sect2>
|
---|
163 | <title>Xorg Protocol Headers</title>
|
---|
164 |
|
---|
165 | <indexterm zone="xorg7">
|
---|
166 | <primary sortas="a-xorg7-proto">Xorg Protocol Headers</primary>
|
---|
167 | </indexterm>
|
---|
168 |
|
---|
169 | <para>The <application>Xorg</application> protocol headers provide the
|
---|
170 | header files required to build the system, and to allow other
|
---|
171 | applications to build against the installed X Window system.</para>
|
---|
172 |
|
---|
173 | <para><application>Xorg</application> Proto packages can be downloaded
|
---|
174 | individually from <ulink
|
---|
175 | url="http://xorg.freedesktop.org/releases/individual/proto/"/>.</para>
|
---|
176 |
|
---|
177 | <sect3 role="installation">
|
---|
178 | <title>Installation of Xorg Protocol Headers</title>
|
---|
179 |
|
---|
180 | <para>Install the <application>Xorg</application> protocol headers
|
---|
181 | by running the following commands for each package to be installed.</para>
|
---|
182 |
|
---|
183 | <screen><userinput>./configure $XORG_CONFIG</userinput></screen>
|
---|
184 |
|
---|
185 | <para>Now as the <systemitem class="username">root</systemitem>
|
---|
186 | user:</para>
|
---|
187 |
|
---|
188 | <screen><userinput role="root">make install</userinput></screen>
|
---|
189 |
|
---|
190 | </sect3>
|
---|
191 |
|
---|
192 | </sect2>
|
---|
193 |
|
---|
194 | <sect2>
|
---|
195 | <title>Xorg Utilities</title>
|
---|
196 |
|
---|
197 | <indexterm zone="xorg7">
|
---|
198 | <primary sortas="a-xorg7-data">Xorg Utilities</primary>
|
---|
199 | </indexterm>
|
---|
200 |
|
---|
201 | <para>The <application>Xorg</application> utility packages provide
|
---|
202 | needed utilities, not for the <application>Xorg</application>
|
---|
203 | installation itself, but for other applications that make use of
|
---|
204 | legacy X11R6 installation methods.</para>
|
---|
205 |
|
---|
206 | <para><application>Xorg</application> Utility packages can be downloaded
|
---|
207 | individually from <ulink
|
---|
208 | url="http://xorg.freedesktop.org/releases/individual/util/"/>.</para>
|
---|
209 |
|
---|
210 | <sect3 role="installation">
|
---|
211 | <title>Installation of Xorg Utilities</title>
|
---|
212 |
|
---|
213 | <para>First install the <application>xorg-cf-files</application> package
|
---|
214 | with the following commands:</para>
|
---|
215 |
|
---|
216 | <screen><userinput>sed -i "s@/usr/X11R6@$XORG_PREFIX@" site.def &&
|
---|
217 | sed -i "s@/usr/X11R6@$XORG_PREFIX@" X11.tmpl &&
|
---|
218 | ./configure $XORG_CONFIG --with-config-dir=$XORG_PREFIX/lib/X11/config &&
|
---|
219 | make</userinput></screen>
|
---|
220 |
|
---|
221 | <para>Now as the <systemitem class="username">root</systemitem>
|
---|
222 | user:</para>
|
---|
223 |
|
---|
224 | <screen><userinput role="root">make install</userinput></screen>
|
---|
225 |
|
---|
226 | <para>Next, install the <application>Imake</application> package with
|
---|
227 | these commands:</para>
|
---|
228 |
|
---|
229 | <screen><userinput>./configure $XORG_CONFIG --with-config-dir=$XORG_PREFIX/lib/X11/config &&
|
---|
230 | make</userinput></screen>
|
---|
231 |
|
---|
232 | <para>Now as the <systemitem class="username">root</systemitem>
|
---|
233 | user:</para>
|
---|
234 |
|
---|
235 | <screen><userinput role="root">make install</userinput></screen>
|
---|
236 |
|
---|
237 |
|
---|
238 | <para>Finally, build the three remaining packages with the standard build
|
---|
239 | commands:</para>
|
---|
240 |
|
---|
241 |
|
---|
242 | <screen><userinput>./configure $XORG_CONFIG &&
|
---|
243 | make</userinput></screen>
|
---|
244 |
|
---|
245 | <para>Now as the <systemitem class="username">root</systemitem>
|
---|
246 | user:</para>
|
---|
247 |
|
---|
248 | <screen><userinput role="root">make install</userinput></screen>
|
---|
249 |
|
---|
250 | </sect3>
|
---|
251 |
|
---|
252 | </sect2>
|
---|
253 |
|
---|
254 | <sect2>
|
---|
255 | <title>Xorg Libraries</title>
|
---|
256 |
|
---|
257 | <indexterm zone="xorg7">
|
---|
258 | <primary sortas="a-xorg7-lib">Xorg Libraries</primary>
|
---|
259 | </indexterm>
|
---|
260 |
|
---|
261 | <para>The <application>Xorg</application> libraries provide library
|
---|
262 | routines that are used within all X Window applications.</para>
|
---|
263 |
|
---|
264 | <para><application>Xorg</application> Library packages can be downloaded
|
---|
265 | individually from <ulink
|
---|
266 | url="http://xorg.freedesktop.org/releases/individual/lib/"/>.</para>
|
---|
267 |
|
---|
268 | <sect3>
|
---|
269 | <title>Meeting Library Dependencies</title>
|
---|
270 |
|
---|
271 | <para>These 17 libraries must be built first, in the order provided,
|
---|
272 | to cover the dependencies of the other library packages:</para>
|
---|
273 |
|
---|
274 | <screen>xtrans-1.0.0
|
---|
275 | libXau-1.0.0
|
---|
276 | libXdmcp-1.0.0
|
---|
277 | libX11-1.0.0
|
---|
278 | libXext-1.0.0
|
---|
279 | libICE-1.0.0
|
---|
280 | libSM-1.0.0
|
---|
281 | libXt-1.0.0
|
---|
282 | libXmu-1.0.0
|
---|
283 | libXpm-3.5.4.2
|
---|
284 | libXp-1.0.0
|
---|
285 | libXfixes-3.0.1.2
|
---|
286 | libXrender-0.9.0.2
|
---|
287 | libfontenc-1.0.1
|
---|
288 | libxkbfile-1.0.2
|
---|
289 | libXprintUtil-1.0.1
|
---|
290 | libXv-1.0.1</screen>
|
---|
291 |
|
---|
292 | </sect3>
|
---|
293 |
|
---|
294 | <sect3 role="installation">
|
---|
295 | <title>Installation of Xorg Libraries</title>
|
---|
296 |
|
---|
297 | <para>Install the libraries by running the following commands for each
|
---|
298 | of the chosen packages:</para>
|
---|
299 |
|
---|
300 | <screen><userinput>./configure $XORG_CONFIG &&
|
---|
301 | make</userinput></screen>
|
---|
302 |
|
---|
303 | <para>Now as the <systemitem class="username">root</systemitem>
|
---|
304 | user:</para>
|
---|
305 |
|
---|
306 | <screen><userinput role="root">make install</userinput></screen>
|
---|
307 |
|
---|
308 | </sect3>
|
---|
309 |
|
---|
310 | <sect3 role="configuration">
|
---|
311 | <title>Configuration of Xorg Libraries</title>
|
---|
312 |
|
---|
313 | <para>If you've chosen to install <application>Xorg</application> into
|
---|
314 | <filename class="directory">/usr</filename>, then no further
|
---|
315 | configuration is necessary and you can skip the rest of this section.
|
---|
316 | If you've opted for an alternate prefix, you should create two symlinks
|
---|
317 | to satisfy the expected environment of several packages.
|
---|
318 | Execute the following commands as the root user:</para>
|
---|
319 |
|
---|
320 | <screen role="root"><userinput>ln -sv $XORG_PREFIX/lib/X11 /usr/lib/X11 &&
|
---|
321 | ln -sv $XORG_PREFIX/include/X11 /usr/include/X11</userinput></screen>
|
---|
322 |
|
---|
323 | <para>As with other library directories, as the root user you must add
|
---|
324 | <filename class="directory">$XORG_PREFIX/lib</filename> to
|
---|
325 | <filename>/etc/ld.so.conf</filename> and execute
|
---|
326 | <command>/sbin/ldconfig</command>.</para>
|
---|
327 |
|
---|
328 | </sect3>
|
---|
329 |
|
---|
330 | </sect2>
|
---|
331 |
|
---|
332 | <sect2>
|
---|
333 | <title>Xorg Data</title>
|
---|
334 |
|
---|
335 | <indexterm zone="xorg7">
|
---|
336 | <primary sortas="a-xorg7-data">Xorg Data</primary>
|
---|
337 | </indexterm>
|
---|
338 |
|
---|
339 | <para>The <application>Xorg</application> data packages provide
|
---|
340 | static data such as images and keymaps to the
|
---|
341 | <application>Xorg</application> applications.</para>
|
---|
342 |
|
---|
343 | <para><application>Xorg</application> Data packages can be downloaded
|
---|
344 | individually from <ulink
|
---|
345 | url="http://xorg.freedesktop.org/releases/individual/data/"/>.</para>
|
---|
346 |
|
---|
347 | <sect3 role="installation">
|
---|
348 | <title>Installation of Xorg Data</title>
|
---|
349 |
|
---|
350 | <para>First, configure the xbitmap package by running the following
|
---|
351 | command:</para>
|
---|
352 |
|
---|
353 | <screen><userinput>./configure $XORG_CONFIG</userinput></screen>
|
---|
354 |
|
---|
355 | <para>Now install as the <systemitem class="username">root</systemitem>
|
---|
356 | user:</para>
|
---|
357 |
|
---|
358 | <screen><userinput role="root">make install</userinput></screen>
|
---|
359 |
|
---|
360 | <note>
|
---|
361 | <para>At this point, you should continue to the applications
|
---|
362 | installation. After the applications installation has completed, you
|
---|
363 | should return here and install the xcursor-themes and xkb-data
|
---|
364 | packages.</para>
|
---|
365 | </note>
|
---|
366 |
|
---|
367 | <para>Compile the xcursor-themes and xkb-data packages with the
|
---|
368 | following commands:</para>
|
---|
369 |
|
---|
370 | <screen><userinput>./configure $XORG_CONFIG &&
|
---|
371 | make</userinput></screen>
|
---|
372 |
|
---|
373 | <para>Install the packages as the
|
---|
374 | <systemitem class="username">root</systemitem> user:</para>
|
---|
375 |
|
---|
376 | <screen><userinput role="root">make install</userinput></screen>
|
---|
377 |
|
---|
378 | </sect3>
|
---|
379 |
|
---|
380 | </sect2>
|
---|
381 |
|
---|
382 | <sect2>
|
---|
383 | <title>Xorg Applications</title>
|
---|
384 |
|
---|
385 | <indexterm zone="xorg7">
|
---|
386 | <primary sortas="a-xorg7-app">Xorg Applications</primary>
|
---|
387 | </indexterm>
|
---|
388 |
|
---|
389 | <note>
|
---|
390 | <para>You must install <xref linkend="mesalib"/> before you install
|
---|
391 | Xorg Applications.</para>
|
---|
392 | </note>
|
---|
393 |
|
---|
394 | <para>The <application>Xorg</application> applications provide the
|
---|
395 | expected applications available in previous X Window
|
---|
396 | implementations.</para>
|
---|
397 |
|
---|
398 | <para><application>Xorg</application> applications can be downloaded
|
---|
399 | individually from <ulink
|
---|
400 | url="http://xorg.freedesktop.org/releases/individual/app/"/>.</para>
|
---|
401 |
|
---|
402 | <sect3 role="installation">
|
---|
403 | <title>Installation of Xorg Applications</title>
|
---|
404 |
|
---|
405 | <para>Install the applications by running the following commands for each
|
---|
406 | chosen package:</para>
|
---|
407 |
|
---|
408 | <screen><userinput>./configure $XORG_CONFIG &&
|
---|
409 | make</userinput></screen>
|
---|
410 |
|
---|
411 | <para>Now as the <systemitem class="username">root</systemitem>
|
---|
412 | user:</para>
|
---|
413 |
|
---|
414 | <screen><userinput role="root">make install</userinput></screen>
|
---|
415 |
|
---|
416 | <note>
|
---|
417 | <para>Remember to return to the data packages and install the
|
---|
418 | xcursor-themes and xkb-data packages.</para>
|
---|
419 | </note>
|
---|
420 |
|
---|
421 | </sect3>
|
---|
422 |
|
---|
423 | <sect3 role="installation">
|
---|
424 |
|
---|
425 | <title>Installation of luit</title>
|
---|
426 |
|
---|
427 | <note>
|
---|
428 | <para>The luit package should not be compiled at this point. You
|
---|
429 | should install the luit application after the fonts have been
|
---|
430 | installed.</para>
|
---|
431 | </note>
|
---|
432 |
|
---|
433 | <para>A patch is required to fix a race condition in
|
---|
434 | <application>luit</application> that was discovered shortly after
|
---|
435 | release. Download the patch from
|
---|
436 | <ulink url="&patch-root;/luit-1.0.1-race-1.patch"/>.</para>
|
---|
437 |
|
---|
438 | <para>Install luit with the following commands:</para>
|
---|
439 |
|
---|
440 | <screen><userinput>patch -Np1 -i luit-1.0.1-race-1.patch &&
|
---|
441 | ./configure $XORG_CONFIG &&
|
---|
442 | make</userinput></screen>
|
---|
443 |
|
---|
444 | <para>Now as the <systemitem class="username">root</systemitem>
|
---|
445 | user:</para>
|
---|
446 |
|
---|
447 | <screen><userinput role="root">make install</userinput></screen>
|
---|
448 |
|
---|
449 | </sect3>
|
---|
450 |
|
---|
451 | </sect2>
|
---|
452 |
|
---|
453 | <sect2>
|
---|
454 | <title>Xorg Fonts</title>
|
---|
455 |
|
---|
456 | <indexterm zone="xorg7">
|
---|
457 | <primary sortas="a-xorg7-fonts">Xorg Fonts</primary>
|
---|
458 | </indexterm>
|
---|
459 |
|
---|
460 | <para>The <application>Xorg</application> font packages provide
|
---|
461 | needed fonts to the <application>Xorg</application> applications.</para>
|
---|
462 |
|
---|
463 | <para><application>Xorg</application> Font packages can be downloaded
|
---|
464 | individually from <ulink
|
---|
465 | url="http://xorg.freedesktop.org/releases/individual/font/"/>.</para>
|
---|
466 |
|
---|
467 | <sect3 role="installation">
|
---|
468 | <title>Installation of Xorg Fonts</title>
|
---|
469 |
|
---|
470 | <para>Run the following commands for each package:</para>
|
---|
471 |
|
---|
472 | <note>
|
---|
473 | <para>You should install encodings and font-util before all
|
---|
474 | other font packages.</para>
|
---|
475 | </note>
|
---|
476 |
|
---|
477 |
|
---|
478 | <screen><userinput>./configure $XORG_CONFIG</userinput></screen>
|
---|
479 |
|
---|
480 | <para>Now as the <systemitem class="username">root</systemitem>
|
---|
481 | user:</para>
|
---|
482 |
|
---|
483 | <screen><userinput role="root">make install</userinput></screen>
|
---|
484 |
|
---|
485 | <para>When all of the fonts have been installed, the system must be
|
---|
486 | configured so that <application>Fontconfig</application> can find the
|
---|
487 | TrueType fonts since they are outside of the default search path of
|
---|
488 | <filename class="directory">/usr/share/fonts</filename>. Make symlinks
|
---|
489 | to the <application>Xorg</application> TrueType font directories by
|
---|
490 | running the following commands as the
|
---|
491 | <systemitem class="username">root</systemitem> user:</para>
|
---|
492 |
|
---|
493 | <screen><userinput role="root">install -d -m755 /usr/share/fonts &&
|
---|
494 | ln -svn $XORG_PREFIX/lib/X11/fonts/OTF /usr/share/fonts/X11-OTF &&
|
---|
495 | ln -svn $XORG_PREFIX/lib/X11/fonts/TTF /usr/share/fonts/X11-TTF</userinput></screen>
|
---|
496 |
|
---|
497 | <note>
|
---|
498 | <para>If you haven't done so, and intend to install
|
---|
499 | <application>luit</application>, do so now.</para>
|
---|
500 | </note>
|
---|
501 |
|
---|
502 | </sect3>
|
---|
503 |
|
---|
504 | </sect2>
|
---|
505 |
|
---|
506 | <sect2>
|
---|
507 | <title>Xorg Server</title>
|
---|
508 |
|
---|
509 | <indexterm zone="xorg7">
|
---|
510 | <primary sortas="a-xorg7-server">Xorg Server</primary>
|
---|
511 | </indexterm>
|
---|
512 |
|
---|
513 | <para>The <application>Xorg</application> Server is the core
|
---|
514 | of the X Window system.</para>
|
---|
515 |
|
---|
516 | <para>The Xorg Server is a single download. Get it from
|
---|
517 | <ulink url="http://xorg.freedesktop.org/releases/individual/xserver/xorg-server-1.0.2.tar.bz2"/>.</para>
|
---|
518 |
|
---|
519 | <sect3 role="installation">
|
---|
520 | <title>Installation of Xorg Server</title>
|
---|
521 |
|
---|
522 | <note>
|
---|
523 | <para>You must have the <application>Mesa</application> source
|
---|
524 | directory available when building the
|
---|
525 | <application>Xorg-server</application>.</para>
|
---|
526 | </note>
|
---|
527 |
|
---|
528 | <!-- To be removed if/when proposed glibc patch is added to LFS SVN
|
---|
529 | Leave in in for a couple of weeks with 'you may need' and a testcase
|
---|
530 | around it to save the support list silly questions. Should remove in
|
---|
531 | a couple of weeks -->
|
---|
532 | <para>Recent glibc may have a problem with it's installed sys/kd.h file.
|
---|
533 | This has recently been fixed in LFS svn. Execute the
|
---|
534 | following commands to work around a broken kd.h file. The commands will
|
---|
535 | only make the modification if needed:</para>
|
---|
536 |
|
---|
537 | <screen><userinput>grep "__undef_LINUX" \
|
---|
538 | /usr/include/sys/kd.h 2>&1 > /dev/null || \
|
---|
539 | sed -i.bak '/CONFIG_H/i #include <linux/types.h>' \
|
---|
540 | hw/xfree86/os-support/linux/lnx_agp.c</userinput></screen>
|
---|
541 | <!-- End remove -->
|
---|
542 |
|
---|
543 | <para>Install the server by running the following commands:</para>
|
---|
544 |
|
---|
545 | <screen><userinput>./configure $XORG_CONFIG \
|
---|
546 | --with-mesa-source='<replaceable></path/to></replaceable>/Mesa-&mesalib-version;' \
|
---|
547 | --with-fontdir=$XORG_PREFIX/lib/X11/fonts \
|
---|
548 | --with-module-dir=$XORG_PREFIX/lib/X11/modules &&
|
---|
549 | make</userinput></screen>
|
---|
550 |
|
---|
551 | <para>Now as the <systemitem class="username">root</systemitem>
|
---|
552 | user:</para>
|
---|
553 |
|
---|
554 | <screen><userinput role="root">make install</userinput></screen>
|
---|
555 |
|
---|
556 | </sect3>
|
---|
557 |
|
---|
558 | </sect2>
|
---|
559 |
|
---|
560 | <sect2>
|
---|
561 | <title>Xorg Drivers</title>
|
---|
562 |
|
---|
563 | <indexterm zone="xorg7">
|
---|
564 | <primary sortas="a-xorg7-driver">Xorg Drivers</primary>
|
---|
565 | </indexterm>
|
---|
566 |
|
---|
567 | <para>The <application>Xorg</application> drivers provide the means
|
---|
568 | for the xserver to take advantage of installed hardware.</para>
|
---|
569 |
|
---|
570 | <para><application>Xorg</application> Driver packages can be downloaded
|
---|
571 | individually from <ulink
|
---|
572 | url="http://xorg.freedesktop.org/releases/individual/driver/"/>.</para>
|
---|
573 |
|
---|
574 | <sect3 role="installation">
|
---|
575 | <title>Installation of Xorg Drivers</title>
|
---|
576 |
|
---|
577 | <warning><para>It is very important not to build display drivers that
|
---|
578 | cannot be used with your hardware. For instance, do not build Sun drivers
|
---|
579 | for an x86 PC as the Sun drivers will expect to see SPARC symbols
|
---|
580 | exported from the kernel. Failure to follow this warning will result
|
---|
581 | in a display lockup, which requires a hard reboot, when configuring
|
---|
582 | <application>Xorg</application> for the first time.</para></warning>
|
---|
583 |
|
---|
584 | <para>Install the drivers by running the following commands for each
|
---|
585 | package:</para>
|
---|
586 |
|
---|
587 | <screen><userinput>./configure $XORG_CONFIG \
|
---|
588 | --with-xorg-module-dir=$XORG_PREFIX/lib/X11/modules &&
|
---|
589 | make</userinput></screen>
|
---|
590 |
|
---|
591 | <para>Now as the <systemitem class="username">root</systemitem>
|
---|
592 | user:</para>
|
---|
593 |
|
---|
594 | <screen><userinput role="root">make install</userinput></screen>
|
---|
595 |
|
---|
596 | </sect3>
|
---|
597 |
|
---|
598 | </sect2>
|
---|
599 |
|
---|
600 | <sect2 role="configuration" id='xorg7-config'>
|
---|
601 | <title>Configuring Xorg</title>
|
---|
602 |
|
---|
603 | <para>As the <systemitem class="username">root</systemitem> user ensure you
|
---|
604 | have executed <command>ldconfig</command> and
|
---|
605 | create the <filename>xorg.conf</filename> file with:</para>
|
---|
606 |
|
---|
607 | <screen><userinput>cd ~ &&
|
---|
608 | Xorg -configure</userinput></screen>
|
---|
609 |
|
---|
610 | <para>The screen will go black and you may hear some clicking of the monitor.
|
---|
611 | This command will create a file, <filename>xorg.conf.new</filename>, in your
|
---|
612 | home directory.</para>
|
---|
613 |
|
---|
614 | <indexterm zone="xorg7 xorg7-config">
|
---|
615 | <primary sortas="e-etc-X11-xorg-conf">/etc/X11/xorg.conf</primary>
|
---|
616 | </indexterm>
|
---|
617 |
|
---|
618 | <para>Edit <filename>xorg.conf.new</filename> to suit your system. The
|
---|
619 | details of the file are located in the xorg.conf man page. Some things
|
---|
620 | you may want to do are:</para>
|
---|
621 |
|
---|
622 | <itemizedlist>
|
---|
623 | <listitem>
|
---|
624 | <para>Section "Files". Change the order of the font paths searched.
|
---|
625 | You may want to put 100dpi fonts ahead of 75dpi fonts if your system
|
---|
626 | normally comes up closer to 100 dots per inch. You may want to remove
|
---|
627 | some font directories completely.</para>
|
---|
628 | </listitem>
|
---|
629 | <listitem>
|
---|
630 | <para>Section "Module". If you are going to install NVidia
|
---|
631 | drivers, remove the "dri" line.</para>
|
---|
632 | </listitem>
|
---|
633 | <listitem>
|
---|
634 | <para>Sections "InputDevice". You may want to change the
|
---|
635 | keyboard autorepeat rate by adding
|
---|
636 | <option>Option "Autorepeat" "250 30"</option>.</para>
|
---|
637 | </listitem>
|
---|
638 | <listitem>
|
---|
639 | <para>Section "Monitor". Specify the <option>VertRefresh</option>
|
---|
640 | and <option>HorizSync</option> values if the system does not
|
---|
641 | automatically detect the monitor and its values.</para>
|
---|
642 | </listitem>
|
---|
643 | <listitem>
|
---|
644 | <para>Section "Device". You may want to set some of the options
|
---|
645 | available for your selected video driver. A description of the driver
|
---|
646 | parameters is in the man page for your driver.</para>
|
---|
647 | </listitem>
|
---|
648 | <listitem><para>Section "Screen". Add a DefaultDepth statement such as:
|
---|
649 | <option>DefaultDepth 24</option>. In the SubSection for your
|
---|
650 | default depth, add a modes line such as:
|
---|
651 | <option>Modes "1600x1200" "1280x1024" "1024x768"</option>. The first
|
---|
652 | mode listed will normally be the starting resolution.</para>
|
---|
653 | </listitem>
|
---|
654 | </itemizedlist>
|
---|
655 |
|
---|
656 | <para>Test the system with:</para>
|
---|
657 |
|
---|
658 | <screen><userinput>X -config ~/xorg.conf.new</userinput></screen>
|
---|
659 |
|
---|
660 | <para>You will only get a gray background with an X-shaped mouse cursor,
|
---|
661 | but it confirms the system is working. Exit with
|
---|
662 | <keycap>Control+Alt+Backspace</keycap>. If the system does not work, take
|
---|
663 | a look at <filename>/var/log/Xorg.0.log</filename> to see what went
|
---|
664 | wrong.</para>
|
---|
665 |
|
---|
666 | <para>As the <systemitem class="username">root</systemitem> user, create
|
---|
667 | the configuration directory and move the configuration file to the new
|
---|
668 | directory:</para>
|
---|
669 |
|
---|
670 | <screen role="root"><userinput>install -v -m755 -D ~/xorg.conf.new /etc/X11/xorg.conf</userinput></screen>
|
---|
671 |
|
---|
672 | <para>As the <systemitem class="username">root</systemitem> user, create
|
---|
673 | <filename>.xinitrc</filename>:</para>
|
---|
674 |
|
---|
675 | <screen><userinput>cat > ~/.xinitrc << "EOF"
|
---|
676 | <literal># Begin .xinitrc file
|
---|
677 | xterm -g 80x40+0+0 &
|
---|
678 | xclock -g 100x100-0+0 &
|
---|
679 | twm</literal>
|
---|
680 | EOF</userinput></screen>
|
---|
681 |
|
---|
682 | <para>This provides an initial screen with a small clock that is
|
---|
683 | managed by a simple window manager, Tab Window Manager. For details of
|
---|
684 | <command>twm</command>, see the man page.</para>
|
---|
685 |
|
---|
686 | <note>
|
---|
687 | <para>The above file is the default configuration for Xorg. Xorg's
|
---|
688 | distribution no longer includes <command>xterm</command>, and as such the
|
---|
689 | <command>startx</command> command will fail if you have not yet
|
---|
690 | installed <xref linkend="xterm2"/>.</para>
|
---|
691 | </note>
|
---|
692 |
|
---|
693 | <indexterm zone="xorg7 xorg7-config">
|
---|
694 | <primary sortas="e-AA.xinitrc">~/.xinitrc</primary>
|
---|
695 | </indexterm>
|
---|
696 |
|
---|
697 | <note>
|
---|
698 | <para>When needed, <application>Xorg</application> creates the directory
|
---|
699 | <filename class='directory'>/tmp/.ICE-unix</filename> if it does not
|
---|
700 | exist. If this directory is not owned by
|
---|
701 | <systemitem class="username">root</systemitem>,
|
---|
702 | <application>Xorg</application> delays startup by a few seconds and also
|
---|
703 | appends a warning to the logfile. This also affects startup of other
|
---|
704 | applications. To improve performance, it is advisable to manually create
|
---|
705 | the directory before <application>Xorg</application> uses it. Add the
|
---|
706 | file creation to <filename>/etc/sysconfig/createfiles</filename> that is
|
---|
707 | sourced by the <filename>/etc/rc.d/init.d/cleanfs</filename> startup
|
---|
708 | script.</para>
|
---|
709 |
|
---|
710 | <screen role="root"><userinput>cat >> /etc/sysconfig/createfiles << "EOF"
|
---|
711 | <literal>/tmp/.ICE-unix dir 1777 root root</literal>
|
---|
712 | EOF</userinput></screen>
|
---|
713 | </note>
|
---|
714 |
|
---|
715 | <indexterm zone="xorg7 xorg7-config">
|
---|
716 | <primary
|
---|
717 | sortas="e-etc-sysconfig-createfiles">/etc/sysconfig/createfiles</primary>
|
---|
718 | </indexterm>
|
---|
719 |
|
---|
720 | <para>Start <application>X</application> with:</para>
|
---|
721 |
|
---|
722 | <screen><userinput>startx</userinput></screen>
|
---|
723 |
|
---|
724 | <para>and a basic functional <application>X Window
|
---|
725 | System</application> should be displayed.</para>
|
---|
726 |
|
---|
727 | <para>At this point, you should check out <xref linkend='x-setup'/> for
|
---|
728 | the necessary configuration to make <application>X</application> fully
|
---|
729 | functional. Additionally, you can have a look at <xref linkend='x-config'/>
|
---|
730 | for information on fine tuning your <application>X</application>
|
---|
731 | configuration.</para>
|
---|
732 |
|
---|
733 | <para>For a list of the package contents and a description of the commands,
|
---|
734 | see the sections in the <xref linkend='xfree86-contents'/>.</para>
|
---|
735 |
|
---|
736 | </sect2>
|
---|
737 |
|
---|
738 | </sect1>
|
---|