Novell Home

SUSE 10.1 / SLED 10 ATI Proprietary Linux Display Driver Installation Instructions

Novell Cool Solutions: Feature
By Jim Gravelle

Digg This - Slashdot This

Posted: 28 Sep 2006
 

Problem:

The ATI Linux driver installation instructions on the ATI website are a little cumbersome and more complicated then they needed to be. Plus they didn't give too many options around installing the drivers outside of an X-Windows environment.

Note: If you have already installed a version of the ATI Proprietary Linux driver, I suggest you follow the Uninstall Procedure before installing the update. I've had some issues in the past with just installing an updated driver over top an existing one.

Environment Factors:

Linux Packages

The following Linux packages are required in order to ensure a successful installation:

Description

Required Packages

All Systems

Additionally Required
on 64 Bit system

The standard C++ library packages

compat / compat-libstdc++ / libstdc++ / libstdc++-devel

compat-32bit

XML Parser Toolkit expat / compat-expat1 expat-32bit
Font rendering subsystem fontconfig / fontconfig-devel fontconfig-32bit
TrueType Font Engine freetype / freetype2 / freetype2-devel freetype2-32bit
GNU C Compiler gcc
The Linux kernel sources. kernel-source
C complier runtime library libgcc
GNU make make
QT libraries qt3 qt3-32bit
X.Org libraries xorg-x11-devel / xorg-x11-libs xorg-x11-devel-32bit / xorg-x11-libs-32bit
OpenGL program support xorg-x11-Mesa / xorg-x11-Mesa-devel xorg-x11-Mesa-32bit / xorg-x11-Mesa-devel-32bit
Data Compression Library zlib / zlib-devel zlib-32bit

ATI Driver

You'll need to visit the ATI Support Website (http://support.ati.com) and download the "ATI Proprietary Linux Display Driver for XFree86 / X.Org". Be sure to grab the full "ATI Driver Installer" version. At the time of this writing it was version 8.28.8 at approximately 53 mega-bytes in size. Once you download the file, as user root, make sure you run the 'chmod 755 ati-driver-installer-<version>-<architecture>.run' command to convert it to an executable, to be run during the installation procedure.

Solution:

Installation Procedure

The following procedure is for creating and installing the ATI driver package:

  1. Be sure to install all of the required "Linux Packages" and download the "ATI Driver Installer", as outlined in the Environment Factors below.
  2. At a Shell/Terminal prompt, switch to user root using the 'sux -' command.
  3. Change (cd) to the directory where you downloaded the "ATI Proprietary Linux x86_64 Display Driver for XFree86 / X.Org" file named "ati-driver-installer-<version>-<architecture>.run"
  4. Now we will create the installer package. Choose one of the following methods:
  5. Method A (Requires a X-Windows environment to work.)

    1. Execute the ATI installer by typing "./ati-driver-installer-<version>-<architecture>.run" at the shell prompt.
    2. The installer will now verify it's integrity and detect your system architecture. Once it has completed these tasks, it will present you with the initial Setup window where you will select "Generate Distribution Specific Driver Package" and click the Continue button.
    3. Read and Agree to the License Agreement.
    4. You'll then be presented with a list of Options. Click the "SuSE Packages"" button and select your O/S version. For me that was "SuSE/SUSE101-AMD64".
    5. Click the Continue button and wait for it to generate and save your custom package.
    6. Ignore the part about running the "aticonfig" tool and click the Exit button.

    Method B (Command line version, which works well in situations when you can't load X-Windows.)

    1. List the packages the ATI installer supports by typing "./ati-driver-installer-<version>-<architecture>.run --listpkg" at the shell prompt.
    2. Locate the "SuSE Packages" section and find the package that matches your O/S. (For my AMD Turion 64 bit processor, I chose "SuSE/SUSE101-AMD64".)
    3. Create the package by using the "--buildpkg" (that's two '-') command. For example: ./ati-driver-installer-<version>-<architecture>.run --buildpkg SuSE/SUSE101-AMD64

  6. To verify the success of the package creation check the "/usr/share/fglrx/fglrx-install.log" file for errors that may have occurred during the package creation. Resolve any errors before continuing. (See the Examples section for a screen shot of a successful package build.)
  7. Now you should have a new RPM that starts with the name "fglrx"". That is the package you will now use to install the driver. Hold down the following three keys to switch to "tty1"": CTRL ? ALT ? F1
  8. Log in as "root" and switch to runlevel 3 (multi-user mode ? no GUI) using the 'init 3' command.
  9. Change (cd) to the directory where your newly generated "fglrx" package was saved.
  10. Type 'rpm -Uvh fglrx~~~~.rpm', where '~~~~' is the remainder of the package name. In my case that would be: fglrx64_6_8_0_SUSE100-8.23.7-1.x86_64.rpm (Note: remember all Linux commands are case-sensitive. That is a capital "U" and small "v" and small "h" after "rpm"".)
  11. If all goes well the package should install without a hitch! Now run the Sax2 program to configure the driver with the following command (all lower case ? that's a zero after the "-m"): sax2 -r -m 0=fglrx
  12. In a few seconds the SaX2 configuration screen should open. Click the "Change Configuration" button and make any changes you need to do (i.e. resolution, colours, etc.) and click the "OK" button. Be sure to "Test"" any changes before saving them! (Note: It's normal if the "3D" symbol in the centre has a red line through it...no need to worry...we'll check the 3D stuff momentarily.)
  13. After you've adjusted things, click the "Save" button and click "Yes" to close SaX2.
  14. Reboot the computer by issuing an 'init 6' command. (Note: For me, sometimes the screen will turn to a grey or off-white colour when exiting SaX2. I don't know why it does that, a simple CTRL ? ALT ? DEL (three finger salute), which reboots the computer, fixes it.)
  15. It's now time to determine if the ATI OpenGL rendering engine is being used: after the reboot, log in normally and at a Terminal prompt issue the following command: fglrxinfo
  16. The output should be "OpenGL vendor string: ATI Technologies Inc." (See the 'Examples' section for a screen shot of the output.) If it reads "OpenGL vendor string: Mesa project: www.mesa3d.org", or anything other then ATI see the Troubleshooting and Testing section below.
  17. That's it! You are all done!

Uninstall Procedure

The following method should be followed to uninstall the ATI Proprietary Linux Display Driver:

  1. Close any open applications.
  2. Hold down the following three keys to switch to "tty1"": CTRL ? ALT ? F1
  3. Log in as "root" and switch to runlevel 3 (multi-user mode ? no GUI) using the 'init 3' command.
  4. Now remove the ATI Driver by executing "rpm -e $(rpm -qa | grep fglrx)".
  5. Now we need to confirm the default driver is put back properly; execute the command "sax2 -r".
  6. This should open a new X-Server window with the SaX2 configuration screen. On the 'Automatic Graphics System Setup', click the "Change Configuration" button and make any changes you need to (ie. resolution, colours, etc.) and click the "OK" button. Be sure to "Test" any changes before saving them.
  7. After you've adjusted things, click the "Save" button and click "Yes" to close SaX2.
  8. Reboot the computer by executing a "init 6"". If all goes well the X-Server window should start up fine, using the default drivers. To confirm the default driver is being used; issue the 'glxinfo' command and look for the 'OpenGL vendor string: Mesa project: www.mesa3d.org' line.
  9. Now let's clean up the kernel modules. Execute the following commands as 'root':
    cd /usr/src/linux
    make mrproper
    make cloneconfig
    make modules_prepare
    make clean
  10. That should about do it. You can now choose to install an updated driver or keep with the default one.

Troubleshooting and Testing

The following are steps to follow in order to troubleshoot and test your ATI OpenGL driver installation. Also, many Kernel updates tend to kick out the ATI modules, so you will need to perform these steps to reinstate the OpenGL drivers.

  1. In a Terminal window, enter the following command: fglrxinfo
  2. The output should say "OpenGL vendor string: ATI Technologies Inc." If it reads "OpenGL vendor string: Mesa project: www.mesa3d.org", or anything other then "ATI" perform the following:

    1. Hold down the following three keys to switch to "tty1": CTRL ? ALT ? F1
    2. Log in as "root" and switch to runlevel 3 (multi-user mode ? no GUI) using the 'init 3' command.
    3. Now we need to ensure the kernel modules are in place: at the command prompt type: fglrx-kernel-build.sh
    4. Note and resolve any errors. Usually problems occur if you don't have the proper packages installed. See the "Linux Packages" section under the "Environment Factors" heading.
    5. Now run the Sax2 program to configure the driver with the following command (all lower case ? that's a zero after the "-m"): sax2 -r -m 0=fglrx
    6. Make any required changes (see the "Installation Procedure" section above for more detail) and save and exit SaX2
    7. Reboot using the 'init 6' command and login as normal (as a user not "root")
    8. Try the 'fglrxinfo' command once more to see the output. Hopefully it reads "ATI". If not, you may either try reinstalling from scratch, or do some forum surfing for some help.

  3. When the OpenGL vendor string says "ATI", in a Terminal window execute the following command: glxgears (A simple OpenGL program that reports back the FPS rating to the Terminal window that spawned it. In my case I reached close to 3000 FPS! :)
  4. Another test is the OpenGL screensaver called "GLMatrix" by Jamie Zawinski. This screensaver comes standard with SUSE Linux and is provided by the 'xscreensaver' package.

Examples:

Install Log


click for larger image

'fglrxinfo' Output


Novell Cool Solutions (corporate web communities) are produced by WebWise Solutions. www.webwiseone.com

© 2014 Novell