Ubuntu Intrepid Installation Guide

From cchtml.com
Revision as of 23:01, 18 April 2009 by 69.249.155.229 (talk) (→‎The alternatives: (tm) to ™)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Installation Guide for Ubuntu Intrepid (v 8.10)

The alternatives

ATI has a bad track-record when it comes to drivers for Linux. There are countless stories about black screens, hours of configuring X, installing drivers and swearing at the computer. AMD has traditionally been a bit more Linux-friendly, so after AMD bought ATI, a slight hope has arisen for better drivers for ATI-cards on Linux.

However, creating better drivers takes some time, so while the people at AMD are doing their thing, people with ATI cards basically have these options:

  1. Use the open source drivers. These are stable and nice, but currently they have poor 3D-performance, if any. If that's not a problem, they are the Right Choice™.
  2. Use the restricted-driver management system that comes with Ubuntu to install the drivers (envy/jockey/"restricted" packages).
  3. Install the proprietary drivers as made available by AMD.
  4. Install the drivers manually. This should be your last resort, and may not even work.

The open source drivers

By default, one of the open source drivers are used. If this works for you, you don't need to change anything.

These come with the X.org X server:

  • vesa
  • ati
  • radeon
  • radeonhd

The "ati" driver will automatically choose the best driver for your video card. There is no need to change it from "ati" or even create an xorg.conf file in most cases. The xorg.conf file is being deprecated.

Installing the restricted drivers "the Ubuntu way"

Restricted Drivers Manager

For most users it won't be necessary to go into installation and configuration details of the driver. Ubuntu 8.10 (Intrepid) provides a notification saying that there are restricted drivers available. You just have to go there (Restricted Drivers Manager) and enable the "ATI accelerated graphics driver". Ubuntu will then install and configure the driver for you.

Post-Installation Tweaks

To enable hardware accelerated video on pre-R500 cards, edit /etc/X11/xorg.conf to include the following lines without [...]

Section "Device"
	[...]
	Driver		"fglrx"
	Option		"VideoOverlay"	"on"
	Option		"OpenGLOverlay"	"off"
	[...]
EndSection

Note that when Visual Effects (Compiz) are active, flickering and artifacts may occur in OpenGL applications and hardware accelerated video windows (particularly with R300 chipset). To prevent this, disable Visual Effects.

Installing the proprietary drivers "the ATI way"

Download the Cataylst 15.12 AMD driver file and run the installer. People that have not had luck with the first two choices have had success with this.

Installing the restricted drivers manually

I recommend using copy and paste. However, you can Ctrl + C in your browser but you cannot Ctrl + V in the terminal. When you have copied something simply use Shift + Insert to paste into the terminal or go to the terminals menu, select edit and click paste. This method will ensure there are no typing mistakes and will greatly speed up the install process.

If you are using the x86_64 architecture (64 bit), be sure to install "ia32-libs" before proceeding!

Make sure universe and multiverse are enabled in your repository sources.

Before you start

Install the necessary programs

Terminal Command

sudo apt-get install build-essential cdbs fakeroot dh-make debhelper debconf libstdc++5 dkms

1. Download the latest Catalyst package.

Download page: Catalyst 9.4 https://a248.e.akamai.net/f/674/9206/0/www2.ati.com/drivers/linux/ati-driver-installer-9-4-x86.x86_64.run. This package contains both the 32-bit and 64-bit driver.

Open a terminal window and switch to the directory you downloaded the installer to. (Example: $ cd Desktop)

Make sure your directory path does not contain spaces

2. Create .deb packages.

Terminal Command

sh ati-driver-installer-9-4-x86.x86_64.run --buildpkg Ubuntu/intrepid

3. Install .debs.

For 32-bit systems

Terminal Command

sudo dpkg -i xorg-driver-fglrx_8.602-0ubuntu1_i386.deb fglrx-kernel-source_8.602-0ubuntu1_i386.deb fglrx-amdcccle_8.602-0ubuntu1_i386.deb

(This may fail due to a missing dpmk. If so install this first)

or for 64-bit systems

Terminal Command

sudo dpkg -i xorg-driver-fglrx_8.602-0ubuntu1_amd64.deb fglrx-kernel-source_8.602-0ubuntu1_amd64.deb fglrx-amdcccle_8.602-0ubuntu1_amd64.deb

Using tab completion can make this command easier.

Additional 64-bit instructions

If you have a 64 bit install, the above dpkg command may 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 receive 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 amdcccle package:

Terminal Command

sudo apt-get install -f

Catalyst 15.12 on 64-bit systems requires the --force-overwrite command in the above dpkg command:

Terminal Command

sudo dpkg -i --force-overwrite xorg-driver-fglrx_8.593-0ubuntu1_amd64.deb fglrx-kernel-source_8.593-0ubuntu1_amd64.deb fglrx-amdcccle_8.593-0ubuntu1_amd64.deb

Using tab completion can make this command easier.

Finishing the Install: Configuration

If you've used fglrx previously, you will not need to do this.

Now you'll have to edit your xorg.conf

For Ubuntu:

Terminal Command

sudo gedit /etc/X11/xorg.conf

For Kubuntu:

Terminal Command

sudo kate /etc/X11/xorg.conf

and add the following line to the Device section (if it does not already exist). Include the following lines without [...]:

Section "Device"
	[...]
	Driver		"fglrx"
	[...]
EndSection

Save and exit, then run

Terminal Command

sudo aticonfig --initial -f

in a terminal. If it doesn't give an error you should be good.

Some people find that changes to xorg.conf don't get used by the driver. To force the ati driver to adopt changes made to xorg.conf, type the following command:

Terminal Command

sudo aticonfig --input=/etc/X11/xorg.conf --tls=1

Finally, reboot the computer and type

Terminal Command

fglrxinfo

into the terminal. If the vendor string contains ATI, you have installed the driver successfully. Release 9.4 looks like:

display: :0.0  screen: 0
OpenGL vendor string: ATI Technologies Inc.
OpenGL renderer string: ATI Radeon HD 4800 Series (This line may be different depending on what graphics card you are using.)
OpenGL version string: 2.1.8591

Please note: Depending on the particular ATI card that you own, you may or may not automatically have all of the relevant driver features enabled. R500 and R600 cards (X1xxx, HD series, and newer) in particular will need TexturedVideo enabled in Xorg.conf (rather than the traditional VideoOverlay) in order to support Xv accelerated video playback.

HOW TO UPDATE DRIVER: To update your driver to a new version (say 9.3 to 9.4) simply repeat steps #1, 2, 3 and finally run these commends in a terminal:

Terminal Command

sudo aticonfig --initial -f

and

Terminal Command

sudo aticonfig --input=/etc/X11/xorg.conf --tls=1

then reboot.

Finally

  1. Add tweaks as needed: http://ubuntuforums.org/showthread.php?t=849422
  2. Restart X, if it doesn't work, you can use the "vesa", "radeon" or "radeonhd" driver in the mean time, until you make it work.
  3. If you downgraded X to make fglrx work: enter synaptic, make sure all packages with "xorg" and "x11" are locked so that you can update and upgrade without worries.

Done! Now run amdcccle, glxgears, nexuiz, warsow etc :)

Issues

Mesa drivers

If fglrxinfo reports that Indirect rendering by Mesa is in place, even though you have installed ATI driver, you might want to remove Mesa:

  • Remove the package xserver-xgl.
sudo apt-get remove xserver-xgl
Explanation: If you installed this previously in order to make compiz work, it will not allow direct rendering on your display. You can check out if this is what it causing the problem by running
DISPLAY=:0 glxinfo | grep render
If it returns an ATI renderer, it means that xgl is being displayed indirectly on the display 1. (Taken from [1])
Warning: This might make your compiz stop working as it is configured to use XGL. A solution might be to run the Envy script in order to configure compiz. Or, if Compiz stopped working due to "Composite" problem, check that the following is set in the /etc/X11/xorg.conf
Section "Extensions"
	Option		"Composite"	"Enable"
EndSection




  • Check for AGP and DRI errors in /var/log/Xorg.0.log like these are:
(EE) fglrx(0): [agp] unable to acquire AGP, error -1023
(EE) fglrx(0): cannot init AGP
(EE) fglrx(0): atiddxDriScreenInit failed, GPS not been initialized.
(WW) fglrx(0): * DRI initialization failed! *
If you have Intel 8285P and E7205 chipsets and AGP not detected then you have to remove the i82875p_edac module and restart a some others:
rmmod i82875p_edac
rmmod fglrx
rmmod intel-agp
rmmod agpgart
modprobe agpgart
modprobe intel-agp
modprobe fglrx
Blacklist the modules e7xxx_edac so it doesn't start up again when booting - add the following line at the beginning of /etc/modprobe.d/blacklist:
blacklist i82875p_edac
This has been known to fix issues with -Mesa -AGP -DRI -Google earth and -suspend to RAM (s2ram).
Explanation: http://openwetware.org/wiki/Computing/Linux/Ubuntu




  • Check you are running the correct kernel.
Explanation: If you're upgrading from Gutsy to Hardy in some instances the Grub bootloader does not get updated and the new kernel is not loaded.
Run in a terminal:
uname -r
If the output starts with 2.6.22 or below you are not using the current kernel and the Ati drivers will not load properly.

If this doesn't help, try Ubuntu Gutsy Installation Guide#Verifying, or other links: [2], [3], [4].


Hang at logout

If you experience hangs when logging out (of X) it is probably due to the /etc/ati/authatieventsd.sh script looking for X authorisation files in the wrong place when it starts up. You can kill the hanging authatieventsd.sh processes from a console tty to allow the shutdown of the X server. This can be fixed permanently with:

sudo mkdir -p /var/lib/xdm/authdir
sudo ln -s /var/run/xauth /var/lib/xdm/authdir/authfiles

If that doesn't work then you can disable atieventsd with this command:

sudo /usr/sbin/update-rc.d -f atieventsd remove


Before the above commands verify that /etc/ati/authatieventsd.sh exists after build and install, if not just do  : (assuming that the installer is in your home directory)

sh ati-driver-installer-8-12-x86.x86_64.run --extract driver
sudo cp ~/driver/packages/Ubuntu/dists/intrepid/replacements/authatieventsd.sh /etc/ati/authatieventsd.sh

(intrepid is to be replaced by the name used at the building stage (hardy,8.10,8.04,etc...)

sudo chmod +x /etc/ati/authatieventsd.sh

just reboot login and ctrl+alt+backspace to try

Suspend/Hibernation

Suspend hibernation works with the latest driver.

For ATI X1400, to get the laptop to wake up from suspend, I had to change the following in /etc/default/acpi-support:

SAVE_VBE_STATE=false

POST_VIDEO=false 

ENABLE_LAPTOP_MODE=false

Comment: This is a little surprising, since the comments at the beginning of /etc/default/acpi-support seem to make it quite clear that those settings are ignored unless you add "acpi-support" to SUSPEND_METHODS. --Bewst 23:22, 19 December 2008 (UTC)

For Radeon 3200, to wake up from suspend, I had to add the following lines to /etc/X11/xorg.conf: (This settings is not good option, if you are using compiz-fusion or any other transparency-based thingie. Not working for HD 3850)

Section "Extensions"
        Option        "Composite"        "Disable"
EndSection

Section "ServerFlags"
       Option  "AIGLX" "off" 
EndSection

A second Radeon 3200 suspend/wake issue seems to be related to the mouse/keyboard itself. Adding a reset to the kernel line of your grub configuration seems to solve this. In other words, update /boot/grub/menu.lst and add an i8042.reset:

kernel		/boot/vmlinuz-2.6.27-11-generic root=UUID=73293ec3-5ee4-418c-914
4-1457914fb284 ro quiet splash i8042.reset

Can't remove fglrx with dpkg

If dpkg really-really refuses to remove an older fglrx-package, it might be needed to edit /var/lib/dpkg/diversions and remove a few lines. This is a hack and should be avoided.

This module/version combo is already installed

If you get this error-message, simply uninstall the previous version before installing the new one with:

Terminal Command

sudo dkms remove -m fglrx -v 8.522 --all

New kernel installed?

I found out that when getting a new kernel the fglrx kernel-module is not installed for your new kernel. You can do that by these simple steps:

Terminal Command

sudo dkms build -m fglrx -v 8.552 -k `uname -r`
sudo dkms install -m fglrx -v 8.552 -k `uname -r`

AMD Control Center

You can start the AMD Control Center by typing:

Terminal Command

amdcccle

If amdcccle doesn't work and says Identifier is not a valid word, this may be caused by some of the reasons below:
- Use lower case letter in xorg.conf.
- Make sure lines have no hard returns in them causing some parameters without their corresponding keywords are misinterpreted
- If amdcccle complains about some keyword in your xorg.conf and quits with a segmentation fault, you may just be working with a different xorg.conf than your system uses. I had a copy of some generic xorg.conf in my home directory, and amdcccle complained about stuff it couldn't cope with. You need to start amdcccle in your /etc/X11 directory.