Ubuntu Feisty Installation Guide

From cchtml.com
Revision as of 20:01, 15 May 2012 by Mooninite (talk | contribs)

The latest fglrx driver supports Radeon 9500 and the X-series cards up to HD2900. Workstation cards are not supported.

Pre-Installation Checks

Video Card Support

Card Class Supported (8.42.3) Supported (7.12)
Radeon Consumer Cards 9500 to 9800 Yes
Radeon Consumer Cards X300 to X1950 Yes
Radeon Consumer Cards HD 2400 to HD 2900 Yes
FireGL Workstation Cards No Yes

Enable "restricted" Repository

Make sure the restricted repository is enabled in /etc/apt/sources.list or this guide will not work!

System > Administration > Software Sources. Check "Proprietary Drivers for Devices (Restricted)" box.

Disable Composite Extension

In Ubuntu Feisty the Composite extension is enabled by default, however, fglrx does not yet support Composite with DRI. In order to disable Composite you have to edit the xorg.conf file:

gksu gedit /etc/X11/xorg.conf

and add these lines at the end of the file:

File: /etc/X11/xorg.conf
Section "Extensions"
        Option  "Composite" "Disable"
EndSection

Section "ServerFlags"
        Option  "AIGLX" "off"
EndSection
  • Note: Xubuntu does not have gedit. The default text editor in Xubuntu is called mousepad.
gksu mousepad /etc/X11/xorg.conf
  • Note: Kubuntu does not have gedit. The default text editor in Kubuntu is called Kate.
kdesudo kate /etc/X11/xorg.conf

Another option is to use nano directly from the terminal.

sudo nano /etc/X11/xorg.conf

Installation

Method 1: Install the Driver the Ubuntu Way

sudo apt-get update
sudo apt-get install linux-restricted-modules-generic restricted-manager
sudo apt-get install xorg-driver-fglrx
sudo depmod -a

Note: The second line of the above may not be necessary. If apt says it cannot find the "linux-restricted-modules" package, try line 3. If that fails, check your sources.list (see top of page)

If the system complains about dependencies, use your preferred package manager to download python2.4 and, if necessary, its dependencies.

Method 2: Install the 8.42.3 Driver Manually

  • Note: This is just an alternative installation method for the section above. It might help if you still get 'DRI missing' errors.

Download the ATI driver installer: ati-driver-installer-8.42.3-x86.x86_64.run (this installer is for 32bit and 64bit systems)

Alternatively: You can get the newest driver from here: [1].

Change to the download directory. Make sure that you have the universe and multiverse repositories enabled in /etc/apt/sources.list before doing these steps.

There is a detailed manual with screenshots at Ubuntu Wiki.

By default, Ubuntu does not enable the Universe and Multiverse repositories. But they include some important programs and codecs, so it is highly recommended to activate them.

Install necessary tools:

sudo apt-get update
sudo apt-get install module-assistant build-essential fakeroot dh-make debhelper \
debconf libstdc++5 linux-headers-generic

Create .deb packages:

sudo chmod u+x ati-driver-installer-<version>.run
# e.g. sudo chmod u+x ./ati-driver-installer-8-8-x86.x86_64.run
sudo ./ati-driver-installer-<version>.run --buildpkg Ubuntu/<release>
# e.g. sudo ./ati-driver-installer-8-8-x86.x86_64.run --buildpkg Ubuntu/hardy

Blacklist old fglrx module from linux-restricted-modules:

  • Note: You only need to do this if you've installed the driver from Method 2 above.

As ubuntu's linux-restricted-modules package includes the fglrx module from an old driver version (8.28.8), we have to blacklist this module to make sure the new kernel module which is needed by the new driver will be used instead.

Ubuntu/Gnome users type in:

gksu gedit /etc/default/linux-restricted-modules-common

Kubuntu/KDE users type in:

kdesudo kate /etc/default/linux-restricted-modules-common

Add "fglrx" to the line "DISABLED_MODULES"

File: /etc/default/linux-restricted-modules-common
DISABLED_MODULES="fglrx"


Install .deb packages:

sudo dpkg -i xorg-driver-fglrx_8.42.3-1*.deb \
fglrx-kernel-source_8.42.3-1*.deb \
fglrx-amdcccle_8.42.3-1*.deb
  • Note: If you have a 64 bit install, the above dpkg command will likely complain that "Errors were encountered while processing: fglrx-amdcccle". This is because of a dependency of the amdccle package on 32 bit libraries. If you recieve this error, issue the following command after the above dpkg command, which will force the installation of all of the 32 bit dependencies, and then the amdccle package:
sudo apt-get install -f


Remove any old fglrx debs from /usr/src/:

sudo rm /usr/src/fglrx-kernel*.deb

Fix broken dependencies

  • Note: You only need to do this if you have installed previous versions of these drivers using this method before.
sudo apt-get -f install

Compile the kernel module:

  • Note: Since Catalyst 7.12, this step is not needed anymore, because the fglrx-kernel-source package compiles and installs the module.
sudo module-assistant prepare
sudo module-assistant update
sudo module-assistant build fglrx
sudo module-assistant install fglrx
sudo depmod -a

It's necessary, because sometimes this file is written by other packages, and so there's no 3D acceleration.


Create the following folder

sudo mkdir /lib/modules/$(uname -r)/volatile

Create a symbolic link

sudo ln -s /lib/modules/$(uname -r)/misc/fglrx.ko /lib/modules/$(uname -r)/volatile/fglrx.ko


IMPORTANT: You have to recompile the kernel module after each kernel update!

Configure the Driver

  • Note Method 2 Users: Before you carry out this step you must reboot your machine. Or else the fglrx driver will not be in use on xorg.conf and using the aticonfig options will cause a memory dump and not intialise the Driver properly.
  • Note: 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. Another alternative is aticonfig --initial --force if you encounter issues with the first command.
sudo aticonfig --initial

Then:

sudo aticonfig --overlay-type=Xv
  • Note: Is there an alternative to the previous step?

Finish the Installation

Now save any open document and reboot your system:

sudo shutdown -r now
  • Note: An alternative to rebooting is to restart the X Server by pressing your CTRL ALT BACKSPACE keys. You must remove any old kernel modules such as "drm" "radeon" or "fglrx" using the "rmmod" command. Example: sudo rmmod fglrx

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: ATI MOBILITY RADEON 9600/9700 Series
OpenGL version string: 2.0.6650 (8.40.4)

The OpenGL vendor string should read ATI and not Mesa.

If you see a message like 'Xlib: extension "XFree86-DRI" missing on display ":1.0"' then you may have to add the following to /etc/X11/xorg.conf (see [2]):

File: /etc/X11/xorg.conf
Section "Extensions"
    Option "Composite" "Disable"
EndSection

Additional configure with aticonfig tool

You can even more configure the driver with the aticonfig tool, more information can be found at Configuring.

For example:

  • use powerplay option to switch power state for battery friendly or performance mode
  • use dual head or one big desktop mode
  • turn second monitor on/off on the fly


Ubuntu-specific Issues

Tocuhdwon! That's a really cool way of putting it!

If suspend is not working

If suspend stops working after fglrx installation, meaning display will not initialize after attempting to resume, then changing a few options has been reported to work for some hardware.


For ATI X700 and ATI X1100 on Acer Aspire 5051:

File: /etc/default/acpi-support
SAVE_VBE_STATE=false
POST_VIDEO=true
USE_DPMS=false

For ATI X1300 and the ATI X1400 on a Dell Inspiron 9400 or Lenovo Thinkpad T60, also for ATI X1600 on Asus Z96J (using install method 2):

File: /etc/default/acpi-support
POST_VIDEO=false

See Also