Leading and Bleeding with XFree86 4.0 and KDE 2 Beta
Step 2: Installing XFree86 4.0

Scott Courtney
Monday, May 15, 2000 10:11:30 AM
XFree86 4.0, available from http://www.xfree86.org/, is
"released" but the development team's web site says that 3.3.6 is
still the more stable version and recommended for most users. There are
substantial performance improvements in 4.0 and a new format for the critical
XF86Config file. I had seen such a substantial boost in speed on the Dell
laptop that I was drooling to get XFree86 4.0 on my desktop as well (especially
since I no longer have that laptop).
I have tried unsuccessfully to build XFree86 4.0 from source on three
Caldera OpenLinux systems. The make step always hangs while building xterm, and
I'm not enough of a C++ wizard to know why. Dep says that if you kill (from
another console) the particular step that's hanging (not make itself), the
process actually continues and apparently suffers no ill effects (it's already
done building xterm at the point of failure, but it hasn't figured that out
yet). I had reached my frustration limit by the time I got that tip, so I never
got around to trying it. Instead, I simply installed from the binaries that I
had already downloaded. Having Caldera OpenLinux 2.3 and glibc 2.1.3, the
binaries I used were those for glibc 2.1. Specifically, I downloaded them from
ftp://ftp.xfree86.org/pub/XFree86/4.0/binaries/Linux-ix86-glibc21/.
The mirror sites weren't yet updated when I went looking for this version, but
they may be by now, so you might want to check your nearest mirror first.
If you're running XFree86 3.x.x now, take the time to make a backup of
/etc/X11, /usr/X11R6, and
/etc/XF86Config. If you have to back 4.0 out for some reason, this
step will save you a lot of grief. The XFree team recommends installing 4.0
over the top of 3.x.x, because some of your X11 applications that live under
/usr/X11R6 may not be included in the new version. By the way, you
will want to run the installation of both XFree86 and KDE 2.0 with the system
at a console mode prompt, not inside KDE or any other graphical interface. This
is important!
XFree86 4.0 comes with a handy installer called Xinstall.sh, and the
developers strongly recommend the use of this utility. The only areas where I
diverged from the instructions were that I didn't install over my previous
version (and therefore had to manually copy some binaries back into the
/usr/X11R6 directory from my backup area), and I installed under
/opt/X11R6 with a symbolic link from /usr/X11R6. This
last part was because I didn't have room on my /usr filesystem for
two versions of XFree, which is quite large (over 80 meg as installed on my
machine). Xinstall.sh itself worked exactly as advertised, and I had an
installed XFree86 4.0 in just a few minutes.
Unfortunately, installed is not the same as working. The next step after
running Xinstall.sh is to run XFree86 -configure to detect the
video card. This failed immediately, complaining that it couldn't find drivers
for the 3DFX Voodoo series of cards (the driver is called "Glide," by
the way). It turns out that XFree tries to load the Voodoo server module from
its modules directory, but that module depends on the Glide driver. Since I
don't have a Voodoo card, I simply moved the offending module out of the
directory so XFree86 wouldn't try to load it any more. The
-configure step now worked, but all it did was install a generic
VGA. My ATI card didn't auto-detect.
The backup plan was to fall back to the old standby, SuperProbe and
xf86config. SuperProbe (that's the actual name of the binary, including the
upper case) is a handy utility that can tell you more than you ever wanted to
know about your video card. Between that and the manual for my Sony monitor, I
gathered all the hardware data and ran xf86config to build the configuration
file, /etc/X11/XF86Config. Running xf86config is a simple matter
of having the right info at hand and answering the prompts that it displays as
to what kind of mouse, keyboard, monitor, and video card you have. My Sony
210GS monitor can handle horizontal rates of 31.5 to 70 kilohertz and vertical
refresh rates of 50 to 120 hertz. For the choice of video cards, I chose #52 on
the list, the "ATI 264GT (3D Rage Pro)." This matched what SuperProbe
had told me about the ATI Xpert98.
Alas, though xf86config ran perfectly and even had my card on the list, it
ended by telling me that my adapter was unsupported and would only run as
generic VGA. That being, er, less than optimum for a Web development
workstation, I did some empirical hacking around at the XF86Config file, and
eventually ended up with one that worked. The relevant sections of the file for
the ATI Xpert98 look like this:
Section "Device"
Identifier "ATI Mach64 GT (264GT), aka 3D RAGE"
Driver "ati"
VideoRam 8192
EndSection
Identifier "Screen 1"
Device "ATI Mach64 GT (264GT), aka 3D RAGE"
Monitor "Sony 210GS"
DefaultDepth 24
Subsection "Display"
Depth 24
Modes "1280x1024"
ViewPort 0 0
EndSubsection
EndSection
Of course, your system's configuration will be different unless you have the
same hardware as me.
By now it was 11:30 p.m., and I had a working X11 server. The only remaining
step was to copy the old version of /etc/X11/xinit/kdeinitrc from
the backup directory to the new /etc/X11/xinit directory, since
that file is not part of the standard XFree86 distribution.
I was up and running, still in the old KDE but now with the new XFree86 4.0!
The only problem I've found so far is that WordPerfect 8 is broken on my
system, claiming that it can't load the libXt.so.6 library file.
Depending on your distribution, you may need to change the file that starts
your KDE or other X11 desktop. On Caldera 2.3, the affected file is
/etc/rc.d/rc.gui, and the only change I needed was to make the
directory correct for the XF86Config file. Specifically:
XC=/etc/XF86Config
was changed to:
XC=/etc/X11/XF86Config
This is required so that init processing will be able to start X11.
Next: Step 3: Installing KDE 2 Beta »