-->
Previous Table of Contents Next


XFree86 Software Distribution

Most XFree86 distributions are provided as part of the software on a Linux CD-ROM or disk set. Since CD-ROM is the most common form of distribution, we’ll use it as the example throughout this chapter. However, the instructions do apply equally for disk distributions and software packages obtained from an FTP or BBS site.

Typically, the XFree86 software is located in a set of directories called x1, x2, x3, and so on. The Slackware distribution has directories running up to x14, for example. Other distributions may differ in the number of directories. There are also XFree86 applications stored in a set of directories called xap1, xap2, and so on. The software is usually supplied in gzipped format. The contents of each directory are usually displayed in a text file, naming the files and summarizing their purposes.

Before you install the XFree86 software, first verify that it will work with your existing Linux software. XFree86 releases have a dependency on certain versions of the Linux kernel, the C library (libc), and the ld.so version. A file in the distribution directories should explain the lowest version number of each of these three items that is necessary to run XFree86. Alternatively, if you obtained the XFree86 software packaged with a Linux release, it is in most cases compatible and you can skip the verification stage.

The XFree86 software can be installed manually by unzipping each file, then extracting the files in the archive. The files must then be properly loaded into the final directories. This can be a very tedious and lengthy process and should be avoided except by true masochists or those who want to know exactly what is going on. Instead, use the installation routines that are supplied by the Linux vendor, such as setup.

The directories used by XFree86 version 2.X tend to mirror those used by the X386 software product. For most Linux systems, the primary directory is /usr/X386. To be consistent with software packages and utilities that expect a more common X11R5, X11R6, or X11 directory, Linux generally uses links between the X386 directory and the others as necessary. These links are often created by the Linux installation routine.


Tip:  
XFree86 version 3.X abandons the /usr/X386 directory convention in favor of the more common X location /usr/X11R6. When upgrading an installation of XFree86 version 2.X to version 3.X, keep in mind the change of directory names and either change links or remove the old /usr/X386 versions completely. Make sure your path is changed, too.


Note:  
To simplify the directory structure for XFree86, links are usually created to a directory called /usr/X11 which can be linked to /usr/X386 and /usr/X11R6. Check your directory structure to determined which links are in place on your system. Also check your PATH environment variable to see which directory is in the search path (if one has been added at all).

Choosing an X Server

Before installing XFree86, you must decide which type of server to use. The XFree86 servers are drivers for the video system (because X is a GUI, it makes extensive use of the video card in your system). Choosing the wrong type of server for your video card can cause your entire system to behave erratically (and in some cases damage your video card or monitor!). Be sure that the server matches your hardware.

There are several drivers available in most XFree86 distribution sets, and the names of the files tend to indicate the video card they are designed for. For example, you may encounter the following server files in most XFree86 versions:

• XF86_Mono Monochrome video card (generic)
• XF86_VGA16 16-color VGA video card (generic)
• XF86_SVGA Color SVGA video card (generic)
• XF86_S3 Accelerated server for S3-based video cards
• XF86_Mach8 Accelerated server for Mach8 video cards
• XF86_Mach32 Accelerated server for Mach32 video cards
• XF86_8514 Accelerated server for 8514/A video cards

The generic indications in the preceding list mean that the server has no card-specific instructions, whereas the other servers have card-specific video card requirements. For example, the XF86_S3 server can be used only with video cards using the S3 chipset. Check with your video card documentation (or use a diagnostic utility program) to determine your video card’s chipset. Your distribution version of XFree86 probably has other specific server versions, so check the documentation for compatibility details.

The generic server drivers work with most cards that provide VGA and SVGA support. However, because the generic driver provides only the basic VGA and SVGA video instructions, any fancy features or extra power your video card may have will not be used. That’s why the card-specific servers were developed: They let you use the full capabilities of fancy video cards.


Warning:  
Installing an X server with the wrong specific video card driver can cause damage to your system! If you are not sure of the video card chipset, use a generic driver. Most video cards can handle VGA and SVGA generic drivers without a problem. If you’re not sure, use generic!

Most distributions of XFree86 have a default configuration of a standard VGA system prewritten into the configuration files. You can use this default setting without worrying about other configuration items in some cases, but it is better to check the configuration files manually before running XFree86 for the first time.

The server name to be used by XFree86 is changed by modifying the symbolic link to the file called X under the XFree86 bin directory (such as /usr/X386/bin/X or /usr/X11R6/bin/X). You can change the server at any time by creating a new link to the required server file. For example, if you want to use the SVGA server when your system is currently configured for the VGA server, issue the following commands:


rm /usr/X11R6/bin/X

ln -s /usr/X11R6/bin/XF86_SVA /usr/X11R6/bin/X

The first line removes the current link and the second adds the link between XF86_SVGA and X. The directory names for the XFree86 base directory may change, depending on the version of XFree86 you are running (although if they are linked together, it won’t matter which you change).


Previous Table of Contents Next