558 lines
		
	
	
		
			20 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
			
		
		
	
	
			558 lines
		
	
	
		
			20 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
|                             DRI Compilation Guide
 | |
| 
 | |
|           VA Linux Systems, Inc. Professional Services - Graphics.
 | |
| 
 | |
|                                 21 April 2001
 | |
| 
 | |
| 1.  Preamble
 | |
| 
 | |
| 1.1  Copyright
 | |
| 
 | |
| Copyright © 2000-2001 by VA Linux Systems, Inc.  All Rights Reserved.
 | |
| 
 | |
| Permission is granted to make and distribute verbatim copies of this document
 | |
| provided the copyright notice and this permission notice are preserved on all
 | |
| copies.
 | |
| 
 | |
| 1.2  Trademarks
 | |
| 
 | |
| OpenGL is a registered trademark and SGI is a trademark of Silicon Graphics,
 | |
| Inc.  Unix is a registered trademark of The Open Group.  The `X' device and X
 | |
| Window System are trademarks of The Open Group.  XFree86 is a trademark of
 | |
| The XFree86 Project.  Linux is a registered trademark of Linus Torvalds.
 | |
| Intel is a registered trademark of Intel Corporation.  3Dlabs, GLINT, and
 | |
| Oxygen are either registered trademarks or trademarks of 3Dlabs Inc. Ltd.
 | |
| 3dfx, Voodoo3, Voodoo4, and Voodoo5 are registered trademarks of 3dfx Inter-
 | |
| active, Incorporated.  Matrox is a registered trademark of Matrox Electronic
 | |
| Systems Ltd.  ATI Rage and Radeon is a registered trademark of ATI Technolo-
 | |
| gies, Inc.  All other trademarks mentioned are the property of their respec-
 | |
| tive owners.
 | |
| 
 | |
| 2.  Introduction
 | |
| 
 | |
| This document describes how to download, compile and install the DRI.  The
 | |
| DRI provides 3D graphics hardware acceleration for the XFree86 project.  This
 | |
| information is intended for experienced Linux developers.  Beginners are
 | |
| probably better off installing precompiled packages.
 | |
| 
 | |
| Edits, corrections and updates to this document may be mailed to <brian@tung-
 | |
| stengraphics.com>.
 | |
| 
 | |
| Last updated on 13 February 2002 by Brian Paul.
 | |
| 
 | |
| 3.  Prerequisites
 | |
| 
 | |
| You'll need the following:
 | |
| 
 | |
|    o An installation of XFree86 4.1 or later.  The DRI tree has been pruned
 | |
|      down to minimize its size.  But in order to build the DRI tree you need
 | |
|      to have recent X header files, etc. already installed.  If you don't
 | |
|      have XFree86 4.1 (or later) installed you can probably install it from
 | |
|      RPMs (or another package format).  Or, you can download XFree86 as
 | |
|      sources and compile/install it yourself.
 | |
| 
 | |
|    o At least 200MB of free disk space.  If you compile for debugging (the -g
 | |
|      option) then you'll need about 600MB.
 | |
| 
 | |
|    o GCC compiler and related tools.
 | |
| 
 | |
|    o ssh (secure shell) if you're a DRI developer and don't want to use
 | |
|      anonymous CVS download.
 | |
| 
 | |
|    o A 2.4.x Linux Kernel.  See below for details.
 | |
| 
 | |
|    o FreeBSD support is not currently being maintained and may not work.
 | |
| 
 | |
| The DRI 3D drivers generally work on systems with Intel or AMD CPUs.  How-
 | |
| ever, limited support for Alpha and PowerPC support is underway.
 | |
| 
 | |
| For 3dfx Voodoo hardware, you'll also need the Glide3 runtime library
 | |
| (libglide3-v3.so for Voodoo3 or libglide3-v5.so for Voodoo4/5).  These can be
 | |
| downloaded from the DRI website.  You can compile them yourself, but it's
 | |
| often a painful process.
 | |
| 
 | |
| For Matrox G200/G400, Intel i810/i830 or ATI Rage128/Radeon hardware, you'll
 | |
| also need AGP support in your Linux kernel, either built-in or as a loadable
 | |
| module.
 | |
| 
 | |
| 4.  Linux Kernel Preparation
 | |
| 
 | |
| Only the Linux 2.4.x kernels are currently supported by the DRI hardware
 | |
| drivers.  2.5.x kernels may work, but aren't tested.
 | |
| 
 | |
| Most of the DRI drivers require AGP support and using Intel Pentium III SSE
 | |
| optimizations also requires an up-to-date Linux kernel.  Configuring your
 | |
| kernel correctly is very important, as features such as SSE optimizations
 | |
| will be disabled if your kernel does not support them.  Thus, if you have a
 | |
| Pentium III processor, you must configure your kernel for the Pentium III
 | |
| processor family.
 | |
| 
 | |
| Building a new Linux kernel can be difficult for beginners but there are
 | |
| resources on the Internet to help.  This document assumes experience with
 | |
| configuring, building and installing Linux kernels.
 | |
| 
 | |
| Linux kernels can be downloaded from www.kernel.org
 | |
| 
 | |
| Here are the basic steps for kernel setup.
 | |
| 
 | |
|    o Download the needed kernel and put it in /usr/src.  Create a directory
 | |
|      for the source and unpack it.  For example:
 | |
| 
 | |
|                     cd /usr/src
 | |
|                     rm -f linux
 | |
|                     mkdir linux-2.4.x
 | |
|                     ln -s linux-2.4.x linux
 | |
|                     bzcat linux-2.4.x.tar.bz2 | tar xf -
 | |
| 
 | |
|      It is critical that /usr/src/linux point to your new kernel sources,
 | |
|      otherwise the kernel headers will not be used when building the DRI.
 | |
|      This will almost certainly cause compilation problems.
 | |
| 
 | |
|    o Read /usr/src/linux/Documentation/Changes.  This file lists the minimum
 | |
|      requirements for all software packages required to build the kernel.
 | |
|      You must upgrade at least gcc, make, binutils and modutils to at least
 | |
|      the versions specified in this file.  The other packages may not be
 | |
|      needed.  If you are upgrading from Linux 2.2.x you must upgrade your
 | |
|      modutils package for Linux 2.4.x.
 | |
| 
 | |
|    o Configure your kernel.  You might, for example, use make menuconfig and
 | |
|      do the following:
 | |
| 
 | |
|         o Go to Code maturity level options
 | |
| 
 | |
|         o Enable Prompt for development and/or incomplete code/drivers
 | |
| 
 | |
|         o hit ESC to return to the top-level menu
 | |
| 
 | |
|         o Go to Processor type and features
 | |
| 
 | |
|         o Select your processor type from Processor Family
 | |
| 
 | |
|         o hit ESC to return to the top-level menu
 | |
| 
 | |
|         o Go to Character devices
 | |
| 
 | |
|         o Disable Direct Rendering Manager (XFree86 DRI support) since we'll
 | |
|           use the DRI code from the XFree86/DRI tree and will compile it
 | |
|           there.
 | |
| 
 | |
|         o Go to /dev/agpgart (AGP Support) (EXPERIMENTAL) (NEW)
 | |
| 
 | |
|         o Hit SPACE twice to build AGP support into the kernel
 | |
| 
 | |
|         o Enable all chipsets' support for AGP
 | |
| 
 | |
|         o It's recommended that you turn on MTRRs under Processor type and
 | |
|           Features, but not required.
 | |
| 
 | |
|    o Configure the rest of the kernel as required for your system (i.e. Eth-
 | |
|      ernet, SCSI, etc)
 | |
| 
 | |
|    o Exit, saving your kernel configuration.
 | |
| 
 | |
|    o Edit your /etc/lilo.conf file.  Make sure you have an image entry as
 | |
|      follows (or similar):
 | |
| 
 | |
|                       image=/boot/vmlinuz
 | |
|                             label=linux.2.4.x
 | |
|                             read-only
 | |
|                             root=/dev/hda1
 | |
| 
 | |
|      The important part is that you have /boot/vmlinuz without a trailing
 | |
|      version number.  If this is the first entry in your /etc/lilo.conf AND
 | |
|      you haven't set a default, then this will be your default kernel.
 | |
| 
 | |
|    o Compile the new kernel.
 | |
| 
 | |
|                     cd /usr/src/linux-2.4.x
 | |
|                     make dep
 | |
|                     make bzImage
 | |
|                     make modules
 | |
|                     make modules_install
 | |
|                     make install
 | |
| 
 | |
|      Note that last make command will automatically run lilo for you.
 | |
| 
 | |
|    o Now reboot to use the new kernel.
 | |
| 
 | |
| 5.  CPU Architectures
 | |
| 
 | |
| In general, nothing special has to be done to use the DRI on different CPU
 | |
| architectures.  There are, however, a few optimizations that are CPU-depen-
 | |
| dent.  Mesa will determine at runtime which CPU-dependent optimizations
 | |
| should be used and enable them where appropriate.
 | |
| 
 | |
| 5.1  Intel Pentium III Features
 | |
| 
 | |
| The Pentium III SSE instructions are used in optimized vertex transformation
 | |
| functions in the Mesa-based DRI drivers.  On Linux, SSE requires a recent
 | |
| kernel (such as 2.4.0-test11 or later) both at compile time and runtime.
 | |
| 
 | |
| 5.2  AMD 3DNow! Features
 | |
| 
 | |
| AMD's 3DNow! instructions are used in optimized vertex transformation func-
 | |
| tions in the Mesa-based DRI drivers.  3DNow! is supported in most versions of
 | |
| Linux.
 | |
| 
 | |
| 5.3  Alpha Features
 | |
| 
 | |
| On newer Alpha processors a significant performance increase can be seen with
 | |
| the addition of the -mcpu= option to GCC.  This option is dependent on the
 | |
| architecture of the processor.  For example, -mcpu=ev6 will build specifi-
 | |
| cally for the EV6 based AXP's, giving both byte and word alignment access to
 | |
| the DRI/Mesa drivers.
 | |
| 
 | |
| To enable this optimization edit your xc/config/host.def file and add the
 | |
| line:
 | |
| 
 | |
| #define DefaultGcc2AxpOpt -O2 -mcpu=ev6
 | |
| 
 | |
| Additional speed improvements to 3D rendering can be achieved by installing
 | |
| Compaq's Math Libraries (CPML) which can be obtained from http://www.sup-
 | |
| port.compaq.com/alpha-tools/software/index.html
 | |
| 
 | |
| Once installed, you can add this line to your host.def to build with the CPML
 | |
| libraries:
 | |
| 
 | |
| #define UseCompaqMathLibrary YES
 | |
| 
 | |
| The host.def file is explained below.
 | |
| 
 | |
| 6.  Downloading the XFree86/DRI CVS Sources
 | |
| 
 | |
| The DRI project is hosted by SourceForge.  The DRI source code, which is a
 | |
| subset of the XFree86 source tree, is kept in a CVS repository there.
 | |
| 
 | |
| The DRI CVS sources may be accessed either anonymously or as a registered
 | |
| SourceForge user.  It's recommended that you become a registered SourceForge
 | |
| user so that you may submit non-anonymous bug reports and can participate in
 | |
| the mailing lists.
 | |
| 
 | |
| 6.1  Anonymous CVS download:
 | |
| 
 | |
|   1.  Create a directory to store the CVS files:
 | |
| 
 | |
|                        cd ~
 | |
|                        mkdir DRI-CVS
 | |
| 
 | |
|       You could put your CVS directory in a different place but we'll use
 | |
|       ~/DRI-CVS/ here.
 | |
| 
 | |
|   2.  Check out the CVS sources:
 | |
| 
 | |
|                        cd ~/DRI-CVS
 | |
|                        cvs -d:pserver:anonymous@cvs.dri.sourceforge.net:/cvsroot/dri login
 | |
|                          (hit ENTER when prompted for a password)
 | |
|                        cvs -z3 -d:pserver:anonymous@cvs.dri.sourceforge.net:/cvsroot/dri co xc
 | |
| 
 | |
|       The -z3 flag causes compression to be used in order to reduce the down-
 | |
|       load time.
 | |
| 
 | |
| 6.2  Registered CVS download:
 | |
| 
 | |
|   1.  Create a directory to store the CVS files:
 | |
| 
 | |
|                        cd ~
 | |
|                        mkdir DRI-CVS
 | |
| 
 | |
|       You could put your CVS directory in a different place but we'll use
 | |
|       ~/DRI-CVS/ here.
 | |
| 
 | |
|   2.  Set the CVS_RSH environment variable:
 | |
| 
 | |
|                        setenv CVS_RSH ssh      // if using csh or tcsh
 | |
|                        export CVS_RSH=ssh      // if using sh or bash
 | |
| 
 | |
|   3.  Check out the CVS sources:
 | |
| 
 | |
|                        cd ~/DRI-CVS
 | |
|                        cvs -z3 -d:ext:YOURID@cvs.dri.sourceforge.net:/cvsroot/dri co xc
 | |
| 
 | |
|       Replace YOURID with your CVS login name.  You'll be prompted to enter
 | |
|       your sourceforge password.
 | |
| 
 | |
|       The -z3 flag causes compression to be used in order to reduce the down-
 | |
|       load time.
 | |
| 
 | |
| 6.3  Updating your CVS sources
 | |
| 
 | |
| In the future you'll want to occasionally update your local copy of the DRI
 | |
| source code to get the latest changes.  This can be done with:
 | |
| 
 | |
|                 cd ~/DRI-CVS
 | |
|                 cvs -z3 update -dA xc
 | |
| 
 | |
| The -d flag causes any new subdirectories to be created and -A causes most
 | |
| recent trunk sources to be fetched, not branch sources.
 | |
| 
 | |
| 7.  Mesa
 | |
| 
 | |
| Most of the DRI 3D drivers are based on Mesa (the free implementation of the
 | |
| OpenGL API).  The relevant files from Mesa are already included in the
 | |
| XFree86/DRI source tree.  There is no need to download or install the Mesa
 | |
| source files separately.
 | |
| 
 | |
| Sometimes a newer version of Mesa will be available than the version included
 | |
| in XFree86/DRI.  Upgrading Mesa within XFree86/DRI is not always straightfor-
 | |
| ward.  It can be an error-prone undertaking, especially for beginners, and is
 | |
| not generally recommended.  The DRI developers will upgrade Mesa when appro-
 | |
| priate.
 | |
| 
 | |
| 8.  Compiling the XFree86/DRI tree
 | |
| 
 | |
| 8.1  Make a build tree
 | |
| 
 | |
| Rather than placing object files and library files right in the source tree,
 | |
| they're instead put into a parallel build tree.  The build tree is made with
 | |
| the lndir command:
 | |
| 
 | |
|                  cd ~/DRI-CVS
 | |
|                  ln -s xc XFree40
 | |
|                  mkdir build
 | |
|                  cd build
 | |
|                  lndir -silent -ignorelinks ../XFree40
 | |
| 
 | |
| The build tree will be populated with symbolic links which point back into
 | |
| the CVS source tree.
 | |
| 
 | |
| Advanced users may have several build trees for compiling and testing with
 | |
| different options.
 | |
| 
 | |
| 8.2  Edit the host.def file
 | |
| 
 | |
| The ~/DRI-CVS/build/xc/config/cf/host.def file is used to configure the
 | |
| XFree86 build process.  You can change it to customize your build options or
 | |
| make adjustments for your particular system configuration
 | |
| 
 | |
| The default host.def file will look something like this:
 | |
| 
 | |
|                  #define DefaultCCOptions -Wall
 | |
|      (i386)      #define DefaultGcc2i386Opt -O2
 | |
|      (Alpha)     #define DefaultGcc2AxpOpt -O2 -mcpu=ev6 (or similar)
 | |
|                  #define LibraryCDebugFlags -O2
 | |
|                  #define BuildServersOnly YES
 | |
|                  #define XF86CardDrivers vga tdfx mga ati i810
 | |
|                  #define LinuxDistribution LinuxRedHat
 | |
|                  #define DefaultCCOptions -ansi GccWarningOptions -pipe
 | |
|                  #define BuildXF86DRI YES
 | |
|                  /* Optionally turn these on for debugging */
 | |
|                  /* #define GlxBuiltInTdfx YES */
 | |
|                  /* #define GlxBuiltInMga YES */
 | |
|                  /* #define GlxBuiltInR128 YES */
 | |
|                  /* #define GlxBuiltInRadeon YES */
 | |
|                  /* #define DoLoadableServer NO */
 | |
|                  #define SharedLibFont NO
 | |
| 
 | |
| The ProjectRoot variable specifies where the XFree86 files will be installed.
 | |
| We recommend installing the DRI files over your existing XFree86 installation
 | |
| - it's generally safe to do and less error-prone.  This policy is different
 | |
| than what we used to recommend.
 | |
| 
 | |
| If XFree86 4.x is not installed in /usr/X11R6/ you'll have to add the follow-
 | |
| ing to the host.def file:
 | |
| 
 | |
|                  #define ProjectRoot pathToYourXFree86installation
 | |
| 
 | |
| Note the XF86CardDrivers line to be sure your card's driver is listed.
 | |
| 
 | |
| If you want to enable 3DNow! optimizations in Mesa and the DRI drivers, you
 | |
| should add the following:
 | |
| 
 | |
|                  #define MesaUse3DNow YES
 | |
| 
 | |
| You don't have to be using an AMD processor in order to enable this option.
 | |
| The DRI will look for 3DNow! support and runtime and only enable it if appli-
 | |
| cable.
 | |
| 
 | |
| If you want to enable SSE optimizations in Mesa and the DRI drivers, you must
 | |
| upgrade to a Linux 2.4.x kernel.  Mesa will verify that SSE is supported by
 | |
| both your processor and your operating system, but to build Mesa inside the
 | |
| DRI you need to have the Linux 2.4.x kernel headers in /usr/src/linux.  If
 | |
| you enable SSE optimizations with an earlier version of the Linux kernel in
 | |
| /usr/src/linux, Mesa will not compile.  You have been warned.  If you do have
 | |
| a 2.4.x kernel, you should add the following:
 | |
| 
 | |
|                  #define MesaUseSSE YES
 | |
| 
 | |
| If you want to build the DRM kernel modules as part of the full build pro-
 | |
| cess, add the following:
 | |
| 
 | |
|                  #define BuildXF86DRM YES
 | |
| 
 | |
| Otherwise, you'll need to build them separately as described below.
 | |
| 
 | |
| 8.3  Compilation
 | |
| 
 | |
| To compile the complete DRI tree:
 | |
| 
 | |
|                  cd ~/DRI-CVS/build/xc/
 | |
|                  make World >& world.log
 | |
| 
 | |
| Or if you want to watch the compilation progress:
 | |
| 
 | |
|                  cd ~/DRI-CVS/build/xc/
 | |
|                  make World >& world.log &
 | |
|                  tail -f world.log
 | |
| 
 | |
| With the default compilation flags it's normal to get a lot of warnings dur-
 | |
| ing compilation.
 | |
| 
 | |
| Building will take some time so you may want to go check your email or visit
 | |
| slashdot.
 | |
| 
 | |
| WARNING: do not use the -j option with make.  It's reported that it does not
 | |
| work with XFree86/DRI.
 | |
| 
 | |
| 8.4  Check for compilation errors
 | |
| 
 | |
| Using your text editor, examine world.log for errors by searching for the
 | |
| pattern ***.
 | |
| 
 | |
| After fixing the errors, run make World again.  Later, you might just compile
 | |
| parts of the source tree but it's important that the whole tree will build
 | |
| first.
 | |
| 
 | |
| If you edited your host.def file to enable automatic building of the DRI ker-
 | |
| nel module(s), verify that they were built:
 | |
| 
 | |
|                cd ~/DRI-CVS/build/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel
 | |
|                ls
 | |
| 
 | |
| Otherwise, build them now by running
 | |
| 
 | |
|                cd ~/DRI-CVS/build/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel
 | |
|                make -f Makefile.linux
 | |
| 
 | |
| For the 3dfx Voodoo, you should see tdfx.o.  For the Matrox G200/G400, you
 | |
| should see mga.o.  For the ATI Rage 128, you should see r128.o.  For the ATI
 | |
| Radeon, you should see radeon.o.  For the Intel i810, you should see i810.o.
 | |
| 
 | |
| If the DRI kernel module(s) failed to build you should verify that you're
 | |
| using the right version of the Linux kernel.  The most recent kernels are not
 | |
| always supported.
 | |
| 
 | |
| If your build machine is running a different version of the kernel than your
 | |
| target machine (i.e. 2.2.x vs. 2.4.x), make will select the wrong kernel
 | |
| source tree. This can be fixed by explicitly setting the value of LINUXDIR.
 | |
| If the path to your kernel source is /usr/src/linux-2.4.x,
 | |
| 
 | |
|                cd ~/DRI-CVS/build/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel
 | |
|                make -f Makefile.linux LINUXDIR=/usr/src/linux-2.4.x
 | |
| 
 | |
| or alternatively, edit Makefile.linux to set LINUXDIR before the ifndef LIN-
 | |
| UXDIR line.
 | |
| 
 | |
| 8.5  DRI kernel module installation
 | |
| 
 | |
| The DRI kernel modules will be in ~/DRI-CVS/build/xc/pro-
 | |
| grams/Xserver/hw/xfree86/os-support/linux/drm/kernel/.
 | |
| 
 | |
| To load the appropriate DRM module in your running kernel you can either use
 | |
| ismod and restart your X server or copy the kernel module to /lib/mod-
 | |
| ules/2.4.x/kernel/drivers/char/drm/ then run depmod and restart your X
 | |
| server.
 | |
| 
 | |
| Make sure you first unload any older DRI kernel modules that might be already
 | |
| loaded.
 | |
| 
 | |
| Note that some DRM modules require that the agpgart module be loaded first.
 | |
| 
 | |
| 9.  Normal Installation and Configuration
 | |
| 
 | |
| Most users will want to install the new X server and use it in place of their
 | |
| old X server.  This section explains how to do that.
 | |
| 
 | |
| Developers, on the other hand, may just want to test the X server without
 | |
| actually installing it as their default server.  If you want to do that, skip
 | |
| to the next section.
 | |
| 
 | |
| 9.1  Installation
 | |
| 
 | |
| Here are the installation commands:
 | |
| 
 | |
|                 su
 | |
|                 cd ~/DRI-CVS/build/xc
 | |
|                 make install
 | |
| 
 | |
| 9.2  Update the XF86Config File
 | |
| 
 | |
| You may need to edit your XF86Config file to enable the DRI.  The config file
 | |
| is usually installed as /etc/X11/XF86Config-4.  See the DRI User Guide for
 | |
| details, but basically, you need to load the "glx" and "dri" modules and add
 | |
| a "DRI" section.
 | |
| 
 | |
| On the DRI web site, in the resources section, you'll find example XF86Config
 | |
| files for a number of graphics cards.  These configuration files also setup
 | |
| DRI options so it's highly recommended that you look at these examples.
 | |
| 
 | |
| The XFree86 4.x server can generate a basic configuration file itself.  Sim-
 | |
| ply do this:
 | |
| 
 | |
|                   cd /usr/X11R6/bin
 | |
|                   ./XFree86 -configure
 | |
| 
 | |
| A file named /root/XF86Config.new will be created.  It should allow you to
 | |
| try your X server but you'll almost certainly have to edit it.  For example,
 | |
| you should add HorizSync and VertRefresh options to the Monitor section and
 | |
| Modes options to the Screen section.  Also, the ModulePath option in the
 | |
| Files section should be set to /usr/X11R6/lib/modules.
 | |
| 
 | |
| 9.3  Start the New X Server
 | |
| 
 | |
| The new X server should be ready to use now.  Start your X server in your
 | |
| usual manner.  Often times the startx command is used:
 | |
| 
 | |
|                   startx
 | |
| 
 | |
| 10.  Testing the Server Without Installing It
 | |
| 
 | |
| As mentioned at the start of section 9, developers may want to simply run the
 | |
| X server without installing it.  This can save some time and allow you to
 | |
| keep a number of X servers available for testing.
 | |
| 
 | |
| 10.1  Configuration
 | |
| 
 | |
| As described in the preceding section, you'll need to create a configuration
 | |
| file for the new server.  Put the XF86Config file in your ~/DRI-
 | |
| CVS/build/xc/programs/Xserver directory.
 | |
| 
 | |
| Be sure the ModulePath option in your XF86Config file is set correctly.
 | |
| 
 | |
| 10.2  A Startup Script
 | |
| 
 | |
| A simple shell script can be used to start the X server.  Here's an example.
 | |
| 
 | |
|              #!/bin/sh
 | |
|              export DISPLAY=:0
 | |
|              ./XFree86 -xf86config XF86Config & \
 | |
|              sleep 2
 | |
|              fvwm2 &
 | |
|              xset b off
 | |
|              xmodmap -e "clear mod4"
 | |
|              xsetroot -solid "#00306f"
 | |
|              xterm -geometry 80x40+0+0
 | |
| 
 | |
| You might name this script start-dri.  Put it in your ~/DRI-CVS/build/xc/pro-
 | |
| grams/Xserver directory.
 | |
| 
 | |
| To test the server run the script:
 | |
| 
 | |
|                   cd ~/DRI-CVS/build/xc/programs/Xserver
 | |
|                   ./start-dri
 | |
| 
 | |
| For debugging, you may also want to capture the log messages printed by the
 | |
| server in a file.  If you're using the C-shell:
 | |
| 
 | |
|                   ./start-dri >& log
 | |
| 
 | |
| 11.  Where To Go From Here
 | |
| 
 | |
| At this point your X server should be up and running with hardware-acceler-
 | |
| ated direct rendering.  Please read the DRI User Guide for information about
 | |
| trouble shooting and how to use the DRI-enabled X server for 3D applications.
 | |
| 
 | |
|      Generated from XFree86: xc/programs/Xserver/hw/xfree86/doc/sgml/DRIcomp.sgml,v 1.20 dawes Exp $
 | |
| 
 | |
| 
 | |
| $XFree86: xc/programs/Xserver/hw/xfree86/doc/README.DRIcomp,v 3.17 2003/07/15 02:28:28 dawes Exp $
 |