Ubuntu Dapper Installation Guide
NOTE: This guide is only for Ubuntu 6.06 (Dapper)! Guides for other versions of Ubuntu can be found at the Ubuntu page.
In Ubuntu Dapper you can choose between two methods of installing the proprietary ATI driver. If you are new to linux you should use the first method as it is a lot easier than the second one and will work well in most cases. The second method describes how to install the very latest driver version, but requires some additional work and knowledge.
Method 1: Installing Dapper's Included Driver (8.25.18)
The included fglrx driver supports Radeon 8500+ and the X-series cards up to X1900.
Unfortunately OpenGL seems to be broken for R200 cards (everything below Radeon 9500) in this driver version. The Troubleshooting section describes how to fix this after xorg-driver-fglrx is installed.
Installing the driver
Make sure the restricted repository is enabled in /etc/apt/sources.list or this guide will not work!
Help on enabling repositories can be found at https://help.ubuntu.com/community/Repositories/Ubuntu.
sudo apt-get update sudo apt-get install linux-restricted-modules-$(uname -r) #Okay if it is already installed sudo apt-get install xorg-driver-fglrx sudo depmod -a sudo aticonfig --initial sudo aticonfig --overlay-type=Xv
Stein: For some reason I had to run "sudo apt-get install linux-restricted-modules-$(uname -r)" twice for it to properly install...
Now Reboot your system:
sudo shutdown -r now
An alternative to the aticonfig --initial command is to edit /etc/X11/xorg.conf and replace the string "ati" with "fglrx" in the "Device" section. This way you won't lose your old "Screen" and "Monitor" settings. Afterwards you can use aticonfig for setting overlay etc.
Confirm that it works
fglrxinfo display: :0.0 screen: 0 OpenGL vendor string: ATI Technologies Inc. OpenGL renderer string: RADEON 9600 Generic OpenGL version string: 2.0.5814 (8.25.18)
Troubleshooting for Method 1
- The output of dmesg | grep fglrx and /var/log/Xorg.0.log are most useful when looking for errors. You should really include this when you are asking for help somewhere.
- Unfortunately OpenGL seems to be broken for R200 cards (everything below Radeon 9500) in this driver version which results in messages like
[fglrx] API ERROR: could not register entrypoint for Uniform2iARB
- and similar when running OpenGL applications. This may be fixed by replacing /usr/lib/libGL.so.1.2 with libGL.so.1.2 from the previous driver version (8.24.8). To do so download this file: libGL.so.1.2 and then copy it to the /usr/lib/ directory.
- It might be necessary to create a symlink to get accelerated OpenGL:
sudo ln -s /usr/lib/dri /usr/lib/xorg/modules/dri
- AMD64 users: It may also be necessary to update /etc/profile if using GDM. Update the $LIBGL_DRIVERS_PATH variable to point to the dri path above.
- To ensure you automatically get the current linux-restricted-modules package with kernel updates, you should install the linux-restricted-modules-??? package matching your kernel-type (without version numer), e.g. linux-restricted-modules-386, linux-restricted-modules-686 or linux-restricted-modules-k7.
- If you used Method 2 before, you have to unblacklist fglrx again by editing /etc/default/linux-restricted-modules-common
- If the screen is coming up blank on startup, start in recovery mode then try editing your /etc/X11/xorg.conf file to remove this line
Load "extmod"
- and optionally replace it with this
SubSection "extmod" Option "omit XVideo" Option "omit XVideo-MotionCompensation" Option "omit XFree86-VidModeExtension" EndSubSection
I just happen to stumble on this page and it is a properly written read, a tad bit on the short side, but a fairly acceptable one. I very much love the layout too, it is fairly simple to navigate.
Post-Installation Checks
Verifying
Run the following command to check its output to ensure the fglrx driver is installed properly:
$fglrxinfo display: :0.0 screen: 0 OpenGL vendor string: ATI Technologies Inc. OpenGL renderer string: MOBILITY RADEON 9700 Generic OpenGL version string: 2.0.6286 (8.33.6)
$ glxinfo | grep render direct rendering: Yes
If your direct rendering is disabled then you may have to ensure fglrx_dri.so is where it should be. Try to symblink the dri folder if you get no direct rendering:
sudo mkdir /usr/X11R6/lib/modules sudo ln -s /usr/lib/dri /usr/X11R6/lib/modules/
Troubleshooting for Method 2
Problems with module-assistant
If module-assistant is unable to build the module you may have to provide a Makefile.cpu file:
cd /usr/src sudo touch kernel-headers-(version)/arch/i386/Makefile.cpu cd /usr/src/linux sudo make scripts/
With recent fglrx, the make.sh in /usr/src/fglrx.tar.bz2 (installed by the fglrx-kernel-source package) is not executable. You may need the following in order to make module-assistant happy:
mkdir /tmp/scratch pushd /tmp/scratch tar xjf /usr/src/fglrx.tar.bz2 chmod +x modules/fglrx/make.sh sudo tar cjf /usr/src/fglrx.tar.bz2 modules popd
If installing over a custom-built kernel (for example 2.6.18), the procedure above may need to be modified slightly, especially if you didn't use make-kpkg to install your kernel:
# sudo module-assistant prepare # no ubuntu package for 2.6.18 sudo module-assistant update sudo module-assistant build -k path/to/my/kernel/sources fglrx sudo module-assistant install -k path/to/my/kernel/sources fglrx sudo depmod -a
xorg.conf
The aticonfig --initial command will not update the xorg.conf file if it already has a "fglrx" Device section. However, you may force aticonfig to generate default Monitor, Device, and Screen sections with the following command:
sudo aticonfig --force --initial
Missing fglrx.ko
If fglrx.ko is not being loaded properly, then /var/log/Xorg.0.log will say things like :
[drm] failed to load kernel module "fglrx" (WW) fglrx(0): Failed to load DRM connection (EE) GART is not initialized, disabling DRI
modprobe shows the problem is
sudo modprobe fglrx FATAL: Could not open '/lib/modules/2.6.15-26-386/volatile/fglrx.ko': No such file or directory
You could copy /lib/modules/2.6.15-26-386/misc/fglrx.ko into the volatile directory, then restart GDM, but you lose it again at the next re-boot.
The solution is to run depmod again with the -e option.
sudo depmod -ae
Then re-boot.
Upgrade from Breezy
If method 2 doesn't work first time round, and you have upgraded from a Breezy installation, try this:
Remove previous versions of the fglrx driver:
sudo dpkg -r fglrx-control sudo dpkg -r fglrx-kernel-source sudo dpkg -r xorg-driver-fglrx
dpkg will list dependencies for xorg-driver-fglrx which will need up be removed, for example:
sudo dpkg -r fglrx-kernel sudo dpkg -r fglrx-kernel-2.6.12-10-686-smp sudo dpkg -r xorg-driver-fglrx
Proceed with method 2
This has made my day. I wish all ptosings were this good.