|
|
Line 1: |
Line 1: |
| In Ubuntu Edgy 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.
| | Thanks for contributing. It's hlpeed me understand the issues. |
| | |
| == Method 1: Installing Edgy's Included Driver (8.28.8)==
| |
| | |
| The included fglrx driver supports Radeon 8500+ and the X-series cards up to X1900.
| |
| | |
| === Disable Composite Extension ===
| |
| | |
| In Ubuntu Edgy the Composite extension is enabled by default, however, ''fglrx'' does not yet support Composite with DRI. In order to to disable Composite you have to edit the ''xorg.conf'' file:
| |
| <pre>sudo gedit /etc/X11/xorg.conf</pre>
| |
| and add these lines at the end of the file:
| |
| {{Box File|/etc/X11/xorg.conf|
| |
| <pre>Section "Extensions"
| |
| Option "Composite" "Disable"
| |
| EndSection</pre>
| |
| }}
| |
| | |
| === Installing the driver ===
| |
| | |
| Make sure the ''restricted'' repository is enabled in ''/etc/apt/sources.list'' or this guide will not work!
| |
| | |
| <pre>
| |
| 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
| |
| </pre>
| |
| | |
| Now Reboot your system:
| |
| | |
| <pre>
| |
| sudo shutdown -r now
| |
| </pre>
| |
| | |
| 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 ===
| |
| <pre>
| |
| fglrxinfo
| |
| display: :0.0 screen: 0
| |
| OpenGL vendor string: ATI Technologies Inc.
| |
| OpenGL renderer string: RADEON 9600 Generic
| |
| OpenGL version string: 2.0.6011 (8.28.8)
| |
| </pre>
| |
| | |
| === 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.
| |
| | |
| *If you used Method 2 before, you have to unblacklist fglrx again by editing ''/etc/default/linux-restricted-modules-common''. You may have to run '''sudo lrm-manager''' afterwards.
| |
| | |
| *See [[#Troubleshooting for both Methods|Troubleshooting for both Methods]]
| |
| | |
| <br /><br />
| |
| | |
| == Method 2: Generating/Installing Ubuntu packages for the new 8.30.3 drivers in Ubuntu Edgy Manually ==
| |
| | |
| The new fglrx driver supports Radeon '''9'''500+ (older cards will not work!) and the X-series cards up to X1900.
| |
| | |
| === Disable Composite Extension ===
| |
| | |
| In Ubuntu Edgy the Composite extension is enabled by default, however, ''fglrx'' does not yet support Composite with DRI. In order to to disable Composite you have to edit the ''xorg.conf'' file:
| |
| <pre>sudo gedit /etc/X11/xorg.conf</pre>
| |
| and add these lines at the end of the file:
| |
| {{Box File|/etc/X11/xorg.conf|
| |
| <pre>Section "Extensions"
| |
| Option "Composite" "Disable"
| |
| EndSection</pre>
| |
| }}
| |
| | |
| === Blacklist old fglrx module from linux-restricted-modules ===
| |
| | |
| 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.
| |
| | |
| <pre>sudo gedit /etc/default/linux-restricted-modules-common</pre>
| |
| Edit ''DISABLED_MODULES'' to include fglrx
| |
| {{Box File|/etc/default/linux-restricted-modules-common|
| |
| <pre>DISABLED_MODULES="fglrx"</pre>
| |
| }}
| |
| | |
| === Installing the new driver ===
| |
| | |
| Download the ATI driver installer: [http://a248.e.akamai.net/f/674/9206/0/www2.ati.com/drivers/linux/ati-driver-installer-8.30.3.run ati-driver-installer-8.30.3.run] (this installer is for 32bit '''and''' 64bit systems)
| |
| | |
| 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.
| |
| | |
| ''Install necessary tools:''
| |
| | |
| <pre>
| |
| sudo apt-get update
| |
| sudo apt-get install module-assistant build-essential
| |
| sudo apt-get install fakeroot dh-make debconf libstdc++5 linux-headers-$(uname -r)
| |
| </pre>
| |
| | |
| ''Create .deb packages:''
| |
| | |
| <pre>
| |
| sudo ln -sf bash /bin/sh
| |
| bash ati-driver-installer-8.30.3.run --buildpkg Ubuntu/edgy
| |
| sudo ln -sf dash /bin/sh
| |
| </pre>
| |
| | |
| ''Install .deb packages:''
| |
| | |
| <pre>
| |
| sudo dpkg -i xorg-driver-fglrx_8.30.3-1*.deb
| |
| sudo dpkg -i fglrx-kernel-source_8.30.3-1*.deb
| |
| sudo dpkg -i fglrx-control_8.30.3-1*.deb
| |
| </pre>
| |
| | |
| ''Remove any old fglrx debs from /usr/src/:''
| |
| | |
| <pre>
| |
| sudo rm /usr/src/fglrx-kernel*.deb
| |
| </pre>
| |
| | |
| ''Compile the kernel module:''
| |
| | |
| <pre>
| |
| sudo module-assistant prepare
| |
| sudo module-assistant update
| |
| sudo module-assistant build fglrx
| |
| sudo module-assistant install fglrx
| |
| sudo depmod -a
| |
| </pre>
| |
| | |
| '''IMPORTANT''': You have to recompile the kernel module after each kernel update!
| |
| | |
| ''Update the xorg.conf file:''
| |
| | |
| <pre>
| |
| sudo aticonfig --initial
| |
| sudo aticonfig --overlay-type=Xv
| |
| </pre>
| |
| | |
| '''Note:'''
| |
| You could also edit your ''/usr/X11/xorg.conf'' file to change your driver to '''fglrx''' then run:
| |
| | |
| <pre>
| |
| sudo aticonfig --overlay-type=Xv
| |
| </pre>
| |
| | |
| This way your ''xorg.conf'' file will stay clean.
| |
| | |
| ''Now Reboot:''
| |
| | |
| <pre>
| |
| sudo shutdown -r now
| |
| </pre>
| |
| | |
| === Confirm that it worked ===
| |
| | |
| <pre>
| |
| $ fglrxinfo
| |
| display: :0.0 screen: 0
| |
| OpenGL vendor string: ATI Technologies Inc.
| |
| OpenGL renderer string: RADEON 9700 Generic
| |
| OpenGL version string: 2.0.6119 (8.30.3)
| |
| </pre>
| |
| | |
| <pre>
| |
| $ glxinfo | grep render
| |
| direct rendering: Yes
| |
| </pre>
| |
| | |
| If your direct rendering is disabled, you may have to symlink the dri folder:
| |
| | |
| <pre>
| |
| sudo mkdir /usr/X11R6/lib/modules
| |
| sudo ln -s /usr/lib/dri /usr/X11R6/lib/modules/
| |
| </pre>
| |
| | |
| === Troubleshooting for Method 2===
| |
| | |
| ==== 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:
| |
| | |
| <pre>
| |
| sudo aticonfig --force --initial
| |
| </pre>
| |
| | |
| | |
| <br /><br />
| |
| | |
| === The module compiles, but doesn't work ===
| |
| For some reason fglrx may need gcc-4.0 to compile, if you experience some message related to gcc version in dmesg, try this:
| |
| | |
| First we'll install it
| |
| | |
| <pre>
| |
| sudo apt-get install gcc-4.0
| |
| </pre>
| |
| | |
| and link it to gcc.
| |
| | |
| <pre>
| |
| sudo ln -sf /usr/bin/gcc-4.0 /usr/bin/gcc
| |
| </pre>
| |
| | |
| After doing the module-assistant steps, you may want to return gcc to 4.1 by default:
| |
| | |
| <pre>
| |
| sudo ln -sf /usr/bin/gcc-4.1 /usr/bin/gcc
| |
| </pre>
| |
| | |
| == Troubleshooting for both Methods ==
| |
| | |
| === General ===
| |
| | |
| The output of '''dmesg | grep fglrx''' and /var/log/Xorg.0.log are most useful when looking for errors.
| |
| | |
| | |
| === DRI does not work although the fglrx module is loaded ===
| |
| | |
| If <strong>fglrxinfo</strong> shows:
| |
| <pre>
| |
| OpenGL vendor string: Mesa project: www.mesa3d.org
| |
| </pre>
| |
| | |
| Make sure the Composite extension is disabled, add this to your /etc/X11/xorg.conf file:
| |
| <pre>
| |
| Section "Extensions"
| |
| Option "Composite" "Disable"
| |
| EndSection
| |
| </pre>
| |
| | |
| This should also resolve the corrupted mouse cursor problem in dual-head mode.
| |
| | |
| === Module isn't loaded ===
| |
| If the fglrx module isn't loaded try to add ''fglrx'' to /etc/modules on a new line. See also [https://launchpad.net/distros/ubuntu/+bug/63912 bug 63912].
| |
| | |
| {{Box File|/etc/modules|
| |
| <pre>
| |
| # /etc/modules: kernel modules to load at boot time.
| |
| #
| |
| # This file contains the names of kernel modules that should be loaded
| |
| # at boot time, one per line. Lines beginning with "#" are ignored.
| |
| | |
| fglrx
| |
| </pre>
| |
| }}
| |
| | |
| === 2D speed ===
| |
| | |
| If you suffer from slow 2D speed it might help to set
| |
| Option "XaaNoOffscreenPixmaps"
| |
| in the fglrx device section of ''/etc/X11/xorg.conf''
| |
| | |
| === Is the rebooting really necessary? ===
| |
| | |
| No.
| |
| | |
| However, rebooting is the easiest method to ensure that the kernel module(s) from the old driver are unloaded and the fglrx module is loaded instead. If you don't want to reboot for some reason, you may manually shut down Xorg, unload any old "drm", "radeon" or "fglrx" modules and then start Xorg again.
| |
| | |
| Note: if ''modprobe fglrx'' can't find the ''fglrx'' module, try rebuilding your kernel module dependency:
| |
| | |
| <pre>
| |
| sudo depmod -a
| |
| </pre>
| |
| | |
| === Revert to Xorg driver ===
| |
| | |
| If (for any reason) the fglrx install fails, you can revert to the Xorg driver by executing
| |
| <pre>sudo dpkg-reconfigure xserver-xorg</pre>
| |
| and selecting the "ati" driver, or simply restoring the previous /etc/X11/xorg.conf file, if you made a backup.
| |
| | |
| You also need to remove the xorg-driver-fglrx or your manually installed drivers to get the 3D acceleration back, since it is provided by file /usr/lib/libGL.so.1.2 which belongs to libgl1-mesa package and which is moved to backup and replaced at the installation of xorg-driver-fglrx (or the manually built) package. In case the removal of the fglrx drivers fails to restore the file from libgl1-mesa, you have to reinstall the package by running:
| |
| | |
| <pre>sudo apt-get install --reinstall libgl1-mesa</pre>
| |