source: x/installing/xorg7.xml@ ba4e992

10.0 10.1 11.0 11.1 8.4 9.0 9.1 lazarus qt5new trunk upgradedb xry111/intltool xry111/test-20220226
Last change on this file since ba4e992 was ba4e992, checked in by Bruce Dubbs <bdubbs@…>, 3 years ago

More tags

git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@21160 af4574ff-66df-0310-9fd7-8a98e5e911e0

  • Property mode set to 100644
File size: 9.7 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6]>
7
8<sect1 id="xorg7" xreflabel="Xorg-&xorg-version;">
9 <?dbhtml filename="xorg7.html"?>
10
11 <sect1info>
12 <othername>$LastChangedBy$</othername>
13 <date>$Date$</date>
14 </sect1info>
15
16 <title>Introduction to Xorg-&xorg-version;</title>
17
18 <indexterm zone="xorg7">
19 <primary sortas="a-xorg7">Xorg</primary>
20 </indexterm>
21
22
23 <para><application>Xorg</application> is a freely redistributable,
24 open-source implementation of the <application>X</application> Window
25 System. This system provides a client/server interface between display
26 hardware (the mouse, keyboard, and video displays) and the desktop
27 environment, while also providing both the windowing infrastructure and a
28 standardized application interface (API).</para>
29
30 <para condition="html" role="usernotes">User Notes:
31 <ulink url='&blfs-wiki;/Xorg7'/></para>
32
33 <bridgehead renderas="sect3">Xorg Download and Installation
34 Instructions</bridgehead>
35
36 <para>Xorg-7.0 introduced a completely auto-tooled, modular build system.
37 With the new modular build system, it is no longer possible to download
38 the entire package in a single file. In fact, there will be well over 100
39 packages that need to be fetched from the download location. To assist
40 with such a large task, installing <xref linkend="wget"/> is strongly
41 recommended for downloading the needed files. A complete
42 <application>wget</application> file list is provided for each page
43 that includes multiple packages.</para>
44
45 <para>Given the number of packages available, deciding which packages you
46 need to install for your particular setup may seem a bit overwhelming at
47 first. Take a look at
48 <ulink url="http://wiki.x.org/wiki/ModuleDescriptions">this page</ulink>
49 and
50 <ulink url="http://lists.x.org/archives/xorg-modular/2005-November/000801.html">this thread</ulink>
51 to get an idea of what you will need. If you are unsure, you should
52 install all packages at the cost of extra disk space.</para>
53
54 <note>
55 <para>Even if you intend to download only the necessary packages, you
56 should download the wget file lists. The list of files are ordered by
57 dependency, and the package versions listed in the files are known to
58 work well with each other. Further, the wget file lists contain comments
59 for specific packages that are deprecated or are not recommended to
60 install. Newer packages are likely intended for the
61 next release of <application>Xorg</application> and have already proved
62 to be incompatible with current versions of software installed in BLFS.
63 The installed size of <application>Xorg</application> can be reduced
64 considerably by installing only the packages that you will need and use,
65 however, the BLFS book cannot account for all dependencies and build
66 options for the individual <application>Xorg</application> packages.
67 The instructions assume that all packages have been built. A
68 <ulink url="&blfs-wiki;/Xorg7">wiki</ulink>
69 page containing dependency information is under development. You are
70 encouraged to add to these pages if you discover additional information
71 that may be helpful to other users who selectively install individual
72 packages.</para>
73 </note>
74
75 <para>Additionally, because of the large number of repetitive commands,
76 you are encouraged to partially automate the build. Instructions have been
77 given that utilize the <xref linkend="sudo"/> package. It is recommended that
78 you use the <parameter>:NOPASSWD</parameter> configuration option for the
79 user that will be building the xorg packages.</para>
80
81 <sect2 id="xorg-env" xreflabel="Xorg build environment">
82 <title>Setting up the Xorg Build Environment</title>
83
84 <note><para>The following instructions assume that the shell
85 startup files have been set up as described in
86 <xref linkend="postlfs-config-profile" />.
87 </para></note>
88
89 <para>First, you'll need to create a working directory:</para>
90
91<screen><userinput>mkdir xc &amp;&amp;
92cd xc</userinput></screen>
93
94 <para>As with previous releases of the X Window System, it may be
95 desirable to install <application>Xorg</application> into an alternate
96 prefix. This is no longer common practice among Linux distributions.
97 The common installation prefix for <application>Xorg</application> on
98 Linux is <filename class="directory">/usr</filename>. There is no
99 standard alternate prefix, nor is there any exception in the current
100 revision of the Filesystem Hierarchy Standard for Release 7 of the X
101 Window System. Alan Coopersmith of Sun Microsystems, has recently
102 stated "At Sun, we were using
103 <filename class="directory">/usr/X11</filename> and plan to stick with
104 it." Only the <filename class="directory">/opt/*</filename> prefix or
105 the <filename class="directory">/usr</filename> prefix adhere to the
106 current FHS guidelines.</para>
107
108 <para>Choose your installation prefix, and set the
109 <envar>XORG_PREFIX</envar> variable with the following
110 command:</para>
111
112<screen><userinput>export XORG_PREFIX="<replaceable>&lt;PREFIX&gt;</replaceable>"</userinput></screen>
113
114 <para>Throughout these instructions, you will use the following
115 <command>configure</command> switches for all of the packages. Create the
116 <envar>XORG_CONFIG</envar> variable to use for this parameter
117 substitution:</para>
118
119<screen><userinput>export XORG_CONFIG="--prefix=$XORG_PREFIX --sysconfdir=/etc \
120 --localstatedir=/var --disable-static"</userinput></screen>
121
122 <para>Create an <filename>/etc/profile.d/xorg.sh</filename> configuration
123 file containing these variables as the
124 <systemitem class="username">root</systemitem> user:</para>
125
126<screen role="root"><userinput>cat &gt; /etc/profile.d/xorg.sh &lt;&lt; EOF
127XORG_PREFIX="$XORG_PREFIX"
128XORG_CONFIG="--prefix=\$XORG_PREFIX --sysconfdir=/etc --localstatedir=/var --disable-static"
129export XORG_PREFIX XORG_CONFIG
130EOF
131chmod 644 /etc/profile.d/xorg.sh</userinput></screen>
132
133 <note><para>There is some confustion about the above 'here' document.
134 The backslash in front of the dollar sign is correct. Bash
135 will remove it when creating /etc/profile.d/xorg.sh. However, if
136 you are creating the file with an editor, a copy and paste operation
137 will not remove the baskslash. It must then be removed manually.
138 </para></note>
139
140 <note><para>If you've decided to use the standard <filename
141 class="directory">/usr</filename> prefix, you can omit the remainder of
142 this page and continue at <xref linkend='util-macros'/>.</para></note>
143
144 <para>If you've decided to <emphasis>not</emphasis> use the standard
145 prefix, be sure to add <filename
146 class="directory">$XORG_PREFIX/bin</filename> to your <envar>PATH</envar>
147 environment variable, and <filename class="directory">
148 $XORG_PREFIX/lib/pkgconfig</filename> and <filename class="directory">
149 $XORG_PREFIX/share/pkgconfig</filename> to your
150 <envar>PKG_CONFIG_PATH</envar> variable. It is also helpful to specify
151 additional search paths for <command>gcc</command> and an include directory
152 for the <command>aclocal</command> program. Issue the following commands
153 as the <systemitem class="username">root</systemitem> user:</para>
154
155<screen role="root"><userinput>cat &gt;&gt; /etc/profile.d/xorg.sh &lt;&lt; "EOF"
156
157pathappend $XORG_PREFIX/bin PATH
158pathappend $XORG_PREFIX/lib/pkgconfig PKG_CONFIG_PATH
159pathappend $XORG_PREFIX/share/pkgconfig PKG_CONFIG_PATH
160
161pathappend $XORG_PREFIX/lib LIBRARY_PATH
162pathappend $XORG_PREFIX/include C_INCLUDE_PATH
163pathappend $XORG_PREFIX/include CPLUS_INCLUDE_PATH
164
165ACLOCAL="aclocal -I $XORG_PREFIX/share/aclocal"
166
167export PATH PKG_CONFIG_PATH ACLOCAL LIBRARY_PATH C_INCLUDE_PATH CPLUS_INCLUDE_PATH
168EOF</userinput></screen>
169
170 <para>You should also add
171 <filename class="directory"> $XORG_PREFIX/lib</filename> to the
172 <filename>/etc/ld.so.conf</filename> file. Again, as the
173 <systemitem class="username">root</systemitem> user, issue the following
174 command:</para>
175
176<screen role="root"><userinput>echo "$XORG_PREFIX/lib" >> /etc/ld.so.conf</userinput></screen>
177
178 <para>You should also modify
179 <filename>/etc/man_db.conf</filename>, adding appropriate
180 MANDATORY_MANPATH, MANPATH_MAP, and MANDB_MAP entries following the
181 examples for <filename class="directory">/usr/X11R6</filename>. Issue the
182 following command as the <systemitem class="username">root</systemitem>
183 user:</para>
184
185<screen role="root"><userinput>sed "s@<replaceable>/usr/X11R6</replaceable>@$XORG_PREFIX@g" -i /etc/man_db.conf</userinput></screen>
186
187 <para>Some applications look for shared files in <filename
188 class="directory">/usr/share/X11</filename>. Create a symbolic link to the
189 proper location as the <systemitem class="username">root</systemitem>
190 user:</para>
191
192<screen role="root"><userinput>ln -svf $XORG_PREFIX/share/X11 /usr/share/X11</userinput></screen>
193
194 <para>If building KDE, some cmake files look for Xorg in places other than
195 $XORG_PREFIX. Allow cmake to find Xorg with:</para>
196
197<screen role="root"><userinput>ln -svf $XORG_PREFIX /usr/X11R6</userinput></screen>
198<!--
199 <para>Finally, if building on x86_64, you will need to create the
200 <filename class="directory">$XORG_PREFIX/lib</filename> directory and the
201 <filename>$XORG_PREFIX/lib64</filename> symlink. Again, as the
202 <systemitem class="username">root</systemitem> user, issue the following
203 commands:</para>
204
205<screen role="root"><userinput>install -v -m755 -d $XORG_PREFIX &amp;&amp;
206install -v -m755 -d $XORG_PREFIX/lib &amp;&amp;
207ln -sf lib $XORG_PREFIX/lib64</userinput></screen>
208-->
209 </sect2>
210
211</sect1>
Note: See TracBrowser for help on using the repository browser.