From 282612744dc1ae0c9731674bf5779378cdb62126 Mon Sep 17 00:00:00 2001 From: Bruce Dubbs Date: Sun, 6 Feb 2005 05:17:20 +0000 Subject: [PATCH] Tagging for xorg git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@3409 af4574ff-66df-0310-9fd7-8a98e5e911e0 --- x/installing/xorg.xml | 293 ++++++++++++++++++++++++------------------ 1 file changed, 171 insertions(+), 122 deletions(-) diff --git a/x/installing/xorg.xml b/x/installing/xorg.xml index 2231594e5d..90e640c9ef 100644 --- a/x/installing/xorg.xml +++ b/x/installing/xorg.xml @@ -13,12 +13,17 @@ -$LastChangedBy$ -$Date$ + $LastChangedBy$ + $Date$ + Xorg-&xorg-version; + + xorg + + Introduction to <application>Xorg</application> @@ -57,27 +62,27 @@ providing both the windowing infrastructure and a standardized application interface (API). Package information - -Download (HTTP): - -Download (FTP): - -Download size: -&xorg-size; -Estimated disk space required: -&xorg-buildsize; -Estimated build time: -&xorg-time; + + Download (HTTP): + Download (FTP): + Download size: &xorg-size; + Estimated disk space required: &xorg-buildsize; + Estimated build time: &xorg-time; + -<application>Xorg</application> Dependencies + + <application>Xorg</application> Dependencies -Required - and + + Required + and + -Optional - + + Optional + @@ -89,13 +94,13 @@ file, there are several files that need to be fetched from the download location (directory /pub/x.org/pub/X11R&xorg-version;/src/): -X11R&xorg-version;-src1.tar.gz -X11R&xorg-version;-src2.tar.gz -X11R&xorg-version;-src3.tar.gz -X11R&xorg-version;-src4.tar.gz -X11R&xorg-version;-src5.tar.gz -X11R&xorg-version;-src6.tar.gz -X11R&xorg-version;-src7.tar.gz + X11R&xorg-version;-src1.tar.gz + X11R&xorg-version;-src2.tar.gz + X11R&xorg-version;-src3.tar.gz + X11R&xorg-version;-src4.tar.gz + X11R&xorg-version;-src5.tar.gz + X11R&xorg-version;-src6.tar.gz + X11R&xorg-version;-src7.tar.gz The first package contains the Xorg libraries @@ -114,72 +119,89 @@ is hardcopy documentation. -Installation of <application>Xorg</application> + Installation of <application>Xorg</application> - -Kernel Compilation Settings -If you have an Intel P6 (Pentium Pro, Pentium II and later), it is -recommended that you compile MTRR (Memory Type Range -Registers) support into the kernel. The kernel can map Cyrix and AMD -CPUs to the MTRR interface, so selecting -this option is useful for those processors also. This option is found in the -"Processor type and features" menu. It can increase performance of -image write operations 2.5 times or more on PCI or -AGP video cards. + + Kernel Compilation Settings + + + Xorg + + If you have an Intel P6 (Pentium Pro, Pentium II and later), it is + recommended that you compile MTRR (Memory Type Range + Registers) support into the kernel. The kernel can map Cyrix and AMD + CPUs to the MTRR interface, so selecting + this option is useful for those processors also. This option is found in the + "Processor type and features" menu. It can increase performance of + image write operations 2.5 times or more on PCI or + AGP video cards. + -In the "Character Devices" section, enable AGP Support -and select the chipset support on your motherboard. If you do not know the -chipset, you may select all the chip types at the expense of extra kernel size. -You can usually determine your motherboard's chipset by running the command -lspci, a program from the -package. + In the "Character Devices" section, enable AGP Support + and select the chipset support on your motherboard. If you do not know the + chipset, you may select all the chip types at the expense of extra kernel size. + You can usually determine your motherboard's chipset by running the command + lspci, a program from the + package. + -In the "Character Devices" section, disable Direct -Rendering Manager unless you have a Direct Rendering Infrastructure -(DRI) supported video card. A complete list of -DRI supported video cards can be found at - in the "Status" section. -Currently, supported cards include those from 3dfx (Voodoo, Banshee), 3Dlabs, -ATI (Rage Pro, Rage 128, Radeon 7X00, Radeon 2), Intel (i810, i815), and -Matrox (G200, G400, G450). + In the "Character Devices" section, disable Direct + Rendering Manager unless you have a Direct Rendering Infrastructure + (DRI) supported video card. A complete list of + DRI supported video cards can be found at + in the "Status" section. + Currently, supported cards include those from 3dfx (Voodoo, Banshee), 3Dlabs, + ATI (Rage Pro, Rage 128, Radeon 7X00, Radeon 2), Intel (i810, i815), and + Matrox (G200, G400, G450). + -Additionally NVidia provides their own closed source binary drivers, -which do not make use of DRI. If you intend to use these -drivers, do not enable DRI. + Additionally NVidia provides their own closed source binary drivers, + which do not make use of DRI. If you intend to use these + drivers, do not enable DRI. + -If you made any changes to the kernel configuration, recompile and -install the new kernel. + If you made any changes to the kernel configuration, recompile and + install the new kernel. + -If you build Xorg in a -chroot environment, make sure the kernel version of the base -system and the target system are the same. - + If you build Xorg in a + chroot environment, make sure the kernel version of the base + system and the target system are the same. + -Suppressing Xprint-related modification to <filename -class="directory">/etc</filename> + + Suppressing Xprint-related modification to <filename class="directory">/etc</filename> -Xorg insists on putting -its boot and profile scripts into the /etc directory even if we specifically tell -it not to compile anything Xprint server or client related (see -host.def below). The following command will -suppress any such modifications: + Xorg insists on putting + its boot and profile scripts into the /etc directory even if we specifically tell + it not to compile anything Xprint server or client related (see + host.def below). The following command will + suppress any such modifications: + sed -i '/^SUBDIRS =/s/ etc$//' programs/Xserver/Xprint/Imakefile -Setting Up a Shadow Directory -When building Xorg, you should create a shadow -directory of symbolic links for the compiled code. To do that, first make -lndir. Starting from the -xc directory: + + Setting Up a Shadow Directory + + When building Xorg, you should create a shadow + directory of symbolic links for the compiled code. To do that, first make + lndir. Starting from the xc directory: + pushd config/util && -make -f Makefile.ini lndir && -cp lndir /usr/bin/ && -popd +make -f Makefile.ini lndir + +Now, as the root user: + +cp lndir /usr/bin/ + +And back as a regular user:: +popd Now create the shadow tree: @@ -188,18 +210,22 @@ cd ../xcbuild && lndir ../xc -Creating <filename>host.def</filename> -The next step is to create the config/cf/host.def -file. The documentation for Xorg indicates that the -application will build without a host.def file, but -the included libraries for Fontconfig and -FreeType2 do not build properly on a base -LFS system. Therefore, you must specify that these -libraries, as well as others, should be imported from the system. + + Creating <filename>host.def</filename> -config/cf/host.def is a C file, not a shell -script. Ensure the comments delimited by /* ... -*/ are balanced when modifying the file. + The next step is to create the config/cf/host.def + file. The documentation for Xorg indicates that the + application will build without a host.def file, but + the included libraries for Fontconfig and + FreeType2 do not build properly on a base + LFS system. Therefore, you must specify that these + libraries, as well as others, should be imported from the system. + + + config/cf/host.def is a C file, not a shell + script. Ensure the comments delimited by /* ... + */ are balanced when modifying the file. + cat > config/cf/host.def << "EOF" /* Begin Xorg host.def file */ @@ -263,19 +289,24 @@ script. Ensure the comments delimited by /* ... /* End Xorg host.def file */ EOF -There are several other options that you may want to consider. A well -documented example file is config/cf/xorgsite.def. + There are several other options that you may want to consider. A well + documented example file is config/cf/xorgsite.def. + + -Build Commands -Install Xorg by running the following -commands: + Build Commands + + Install Xorg by running the following commands: sed -i -e "s@^#include <linux/config.h>@/* & */@" \ `grep -lr linux/config.h *` && -( make World 2>&1 | tee xorg-compile.log && exit $PIPESTATUS ) && -make install && +( make World 2>&1 | tee xorg-compile.log && exit $PIPESTATUS ) + +Againas as the root user: + +make install && make install.man && ln -sf ../X11R6/bin /usr/bin/X11 && ln -sf ../X11R6/lib/X11 /usr/lib/X11 && @@ -287,35 +318,36 @@ ln -sf ../X11R6/include/X11 /usr/include/X11 Command explanations -sed -i -e "s@^#include <linux/config.h>@...: The -Linux-Libc-Headers package installed in -LFS installs a -/usr/include/linux/config.h file which is not compatible -with userspace applications. The recommended fix for applications including -this file is to remove it (see -linux-libc-headers FAQ). The sed uses -grep -lr to replace all occurences. If you desire, just -remove (comment) the line in the appropriate video driver file if you -customized host.def. + sed -i -e "s@^#include <linux/config.h>@...: + The Linux-Libc-Headers package installed in + LFS installs a + /usr/include/linux/config.h file which is not compatible + with userspace applications. The recommended fix for applications including + this file is to remove it (see + linux-libc-headers FAQ). The sed uses + grep -lr to replace all occurences. If you desire, just + remove (comment) the line in the appropriate video driver file if you + customized host.def. -( make World 2>&1 | tee xorg-compile.log - && exit $PIPESTATUS ): -This command runs multiple Makefiles to completely rebuild -the system. 2>&1 redirects error messages -to the same location as standard output. The tee command -allows viewing of the output while logging the results to a file. The -parentheses around the command runs the entire comand in a subshell and finally -the exit $PIPESTATUS ensures the result of the -make is returned as the result and not the result of the -tee command. + ( make World 2>&1 | tee xorg-compile.log + && exit $PIPESTATUS ): + This command runs multiple Makefiles to completely rebuild + the system. 2>&1 redirects error messages + to the same location as standard output. The tee command + allows viewing of the output while logging the results to a file. The + parentheses around the command runs the entire comand in a subshell and finally + the exit $PIPESTATUS ensures the result of the + make is returned as the result and not the result of the + tee command. + -When rebuilding Xorg, a separate command -that may be used if only minor changes are made to the sources is -make Everything. This does not automatically remove generated -files and only rebuilds those files or programs that are out of date. - + When rebuilding Xorg, a separate command + that may be used if only minor changes are made to the sources is + make Everything. This does not automatically remove generated + files and only rebuilds those files or programs that are out of date. + ln -sf ../X11R6/bin /usr/bin/X11 ln -sf ../X11R6/lib/X11 /usr/lib/X11 @@ -327,12 +359,17 @@ symbolic links. They are intended for utilization by users only." - + Configuring Xorg Edit /etc/ld.so.conf and add -/usr/X11R6/lib. -Run: + /usr/X11R6/lib. Run: + + + + /etc/ld.so.conf + + ldconfig Ensure /usr/X11R6/bin @@ -347,6 +384,10 @@ Xorg -configure The screen will go black and you may hear some clicking of the monitor. This command will create a file, xorg.conf.new in your home directory. + + + /etc/X11/xorg.conf + Edit xorg.conf.new to suit your system. The details of the file are located in the xorg.conf man page. Some @@ -405,6 +446,10 @@ twm This provides an initial screen with an xterm and a clock that is managed by a simple window manager, Tab Window Manager. For details of twm, see the man page. + + + ~/.xinitrc + When needed, Xorg creates the directory @@ -421,6 +466,10 @@ the /etc/rc.d/init.d/cleanfs startup script. EOF + + /etc/sysconfig/createfiles + + Start X with: startx to get a basic functional X Window System.