The DRI RPM mini-HOWTO | ||
---|---|---|
<<< Previous | Next >>> |
Surprising as it may seem, if DRI isn't working it may be because you already have a DRI module included in your kernel build. The following instructions assume that you are comfortable rebuilding your kernel.
Install the kernel source (assuming that you are using a source RPM):
rpm -Uvh kernel-2.4.20-2.6.src.rpm |
Prepare the build (assuming that your kernel source has installed under /usr/src/redhat/SOURCES/):
rpmbuild -bp /usr/src/redhat/SPECS/kernel-2.4.spec |
Configure the kernel, by going to (for example) /usr/src/redhat/BUILD/kernel-2.4.20/linux-2.4.20/ and running:
make menuconfig |
In menuconfig, make the following changes:
Go to Code maturity level options
Enable Prompt for development and/or incomplete code/drivers
hit ESC to return to the top-level menu
Go to Processor type and features
Select your processor type from Processor Family
hit ESC to return to the top-level menu
Go to Character devices
Disable Direct Rendering Manager (XFree86 DRI support) since we'll use the DRI code from the XFree86/DRI tree and will compile it there.
Go to /dev/agpgart (AGP Support) (EXPERIMENTAL) (NEW)
Hit SPACE twice to build AGP support into the kernel
Enable all chipsets' support for AGP
It's recommended that you turn on MTRRs under Processor type and Features, but not required.
Exit from menuconfig and copy the configuration file to the source directory (for example)
cp .config ../../../SOURCES/kernel-2.4.20-i386.config |
My preference is to build a kernel RPM at this stage, because it makes it easier to reinstall the kernel again later, when you may not have the build tree available, and I don't like to fill up /boot with too many kernel images. Run:
rpmbuild -bb /usr/src/redhat/SPECS/kernel-2.4.spec |
When this has completed, you should have a new kernel RPM, such as /usr/src/redhat/RPMS/i686/kernel-2.4.20-2.6.i386.rpm. Install this with the command:
rpm -Uvh kernel-2.4.20-2.6.i386.rpm |
Check that the kernel has installed properly. The main things to check are:
Has the kernel been copied to the /boot directory ? Check for the presence of vmlinux and vmlinuz.
Does /etc/lilo.conf include a section for the new kernel and has lilo been run without error ?
Have the kernel modules been installed in /lib/modules/[kernel name]/ ?
Does the /lib/modules/[kernel name]/build logical link point to /usr/src/redhat/BUILD/kernel[number]/linux[number]/ ? This link seems to be important when building subsequent kernel modules.
Do you have a logical link pointing from /usr/src/linux to /usr/src/redhat/BUILD/kernel[number]/linux[number] ? This also seems to be needed for the DRI kernel module. If not, make one, using the command:
ln -s /usr/src/redhat/BUILD/kernel[number]/linux[number] /usr/src/linux |
Once the new kernel has been installed properly, you should reboot. If you're not sure about the kernel, then read the Linux Kernel HOWTO before going any further. You will want to be running the new kernel before building XFree86.
<<< Previous | Home | Next >>> |
Is DRI running ? | Preparing and building XFree86 |