Oct 3, 2010

How I got to get the latest AMD/ATI Catalyst drivers to install on openSUSE 11.3

UPDATE (28-Oct-2010): Sebastian Siebert has posted an update to his script (aka. make-rpm-ati-10.10.sh) which acts a lot like Alberto Milone's Envy script for Ubuntu. They both download, build and install the latest graphics drivers for your NVIDIA and/or AMD/ATI graphics card. Here's a link to his guide translated by Google Translate.

Basically, just to make sure you know the whole deal, if you've reached this page searching for help, the latest Catalyst drivers for ATI video cards (that is Catalyst 10.9) as well as the older version (10.8) don't build the kernel modules (fglrx.ko) correctly due to a breakage introduced with the newer linux kernel that openSUSE 11.3 comes with ( They're supposed to work with the older kernel (2.6.33) but maybe you don't want to downgrade your kernel like I didn't.

AMD opened up an RPM repository at their sites supporting SUSE but it isn't working anymore (is it?) and it had an older version of Catalyst (10.7). Some people have reported that even those drivers to crash. They didn't for me. :/

Either way, a lot has been fixed in the newer releases, including some annoying drawing artifacts with Firefox. To get to the point, the 10.9 Catalyst does build, if you patch it. I found most of the information here. Don't chose to do it the hard way though, use Sebastian Siebert's script like I did (and it only briefly mentions it there, weird). The latest is always here. The prerequisites are simple:

zypper in kernel-source kernel-syms module-init-tools make gcc libstdc++ libgcc glibc-32bit glibc-devel-32bit fontconfig freetype zlib* kernel-devel

But please make sure to update your system first (I did "zypper up" and "zypper dup"), unless you want to fiddle with kernel sources to find out why the module won't build (for the dumb -- like myself -- : if you're running and older version of the kernel yet have the latest kernel headers installed, the module won't build unless you update your whole system to bring those two into sync).

If your /etc/X11/xorg.conf isn't containing any reference to the ATI driver, it is best to run "aticonfig --initial" as root to first generate a working xorg.conf. Don't worry, even if your ATI driver doesn't work, you should get a login screen using the vesa drivers automatically.

If the module doesn't build, go fix the problem, it might be the kernel headers. You don't have to reinstall each time. Run /usr/bin/fglrx-kernel-build.sh and it will rebuild the kernel modules (if it has everything).