Installing proprietary AMD Catalyst Driver under Fedora 22

Installing the proprietary ATI AMD Catalyst driver is a bit tricky under Fedora 22 because the currently available driver, identified as “revision 15.5” on their website, but actually versioned 15.101.1001 as far at the fglrx driver version is concerned, is just not compatible with the Xorg version of Fedora 22. Driver will install fine, but you’ll get a nice black screen on reboot.

One working solution would be to downgrade Xorg packages to Fedora 21 versions, waiting for AMD to release a compatible version of their driver, if they ever do. If you want to go down that route, there’s a good blog entry here that explains quite well how to do so.

However, I didn’t want to downgrade to the Fedora 21 Xorg version, so I managed to find another way. The previous version of the driver I had (14.501.1003) didn’t work with this Xorg version either. However, a somewhat difficult to find, intermediary version of the driver, internally versioned as 15.20.1013, apparently dated from February 2015 (whereas the latest, non-working version is dated April 2015), does actually work with the newer Xorg version. Go figure. As a quick summary:

Internal versionInternal release dateComplete version stringRevision (website)Works with Fedora 22 ?
14.501.10032014-11-20S14.501.1003-141120a-178002C14.xNo, Xorg version not supported
15.20.10132015-02-27S15.20.1013-150227a-180955E-ATI15.3 (?)Yes
15.101.10012015-04-14S15.101.1001-150414a-184705C15.5No, black screen (regression?)

By the way, to find out the real fglrx version and real release date of an fglrx driver, you can look in the amdpcsdb.default file of the unpacked archive :

$ find fglrx-* -name amdpcsdb.default | xargs grep ^ReleaseVersion=

On this complete release version numbering scheme, we can guess that the first part is the fglrx version (e.g. 15.20.1013), the second part is the release date (e.g. 15-02-27), and the third part seems to be a forever incrementing number, probably something like an internal SVN revision (180955). Note that the revision number advertised on their website (15.5 for the most recent version) is nowhere to be found in the archive file.

Back to our problem: the only package I could find for 15.20.1013 is buried deep on Launchpad, it’s labeled 15.200 there (seriously, what the hell AMD with your version numbering?), but it actually is 15.20.1013. Unfortunately, once unpacked, it doesn’t have the usual fglrx installer directory layout, and it’s missing the usual install scripts. It’s not usable out of the box.

What I did was unpacking it, along with the most recent 15.101.1001 package in another directory. Then, I replaced all the libraries and driver components of the 15.101.1001 installer by the 15.20.1013 versions. This way, I have an usable fglrx installer for 15.20.1013.
This operation is not very difficult to do, but a bit cumbersome, if you don’t want to bother doing it yourself, jou can grab the resulting archive, and skip over the next section.

Building a working installer for fglrx 15.20.1013

If you’re lazy, just get my prebuilt 15.20.1013 install package and skip to the next section.

Steps to do it yourself :
Grab the release 15.5 aka fglrx 15.101.1001 (mirror)
Grab the tar.gz of fglrx 15.20.1013 (mirror)
Grab this patch to make the driver compatible with kernel 4.0+
Grab this other patch to help the installer properly detecting your Xorg version with the new rootless X Fedora installations
Then fire up you preferred terminal

# unpack the tar.gz under some directory
$ mkdir drv
$ tar xf fglrx-installer_15.200.orig.tar.gz -C drv
# extract the rel15.5 contents
$ unzip
$ sh --extract inst
Creating directory inst
Verifying archive integrity... All good.
Uncompressing AMD Catalyst(TM) Proprietary Driver-15.101.1001...
# you should now have 2 folders
$ ls
drv inst
# now, let's move files around to replace the
# 15.5 driver files by the 15.200 ones
$ rsync -va drv/xpic* inst/
$ rsync -va --delete drv/arch/ inst/arch/
$ rsync -va --delete drv/etc/ inst/common/etc/
$ rsync -va --delete drv/lib/ inst/common/lib/
$ rsync -va --delete drv/usr/ inst/common/usr/
# change the fglrx version in the installer files
$ sed -i -re 's/15\.101\.1001/15.20.1013/g' inst/*.sh
# apply the usual fixups for kernel 4.0+ compatibility
$ patch -d inst/ -p0 < fglrx-kernel4.0.patch
patching file common/lib/modules/fglrx/build_mod/firegl_public.c
patching file common/lib/modules/fglrx/build_mod/kcl_str.c
# also patch the installer to be Fedora-22 compatible
# in detecting Xserver version with rootless Xorg
$ patch -d inst/ -p0 < fglrx-xorgdetect.patch
patching file
# you now have an installable driver !
$ sudo sh inst/ 15.20.1013 --install

Installing the new driver

If you have an old version of the driver installed, you should uninstall it before.

$ sudo /usr/share/ati/

You might need to add –force if AMD finds your install was a bit messy.
Don’t forget to put your current version.h file in the kernel build directory, the installer needs it there :

$ sudo cp /usr/include/linux/version.h /lib/modules/`uname -r`/build/include/linux/

Then fire up the installer (either built from the previous section, or downloaded here)

$ sudo sh 15.20.1013 --install

Select Install driver 15.20.1013 on X.Org 6.9 or later 64-bit, then Automatic mode. After installation, you should get the fglrx driver on next reboot:

$ glxinfo | grep version
server glx version string: 1.4
client glx version string: 1.4
GLX version: 1.4
OpenGL core profile version string: 4.4.13374 Core Profile Context 15.20.1013
OpenGL core profile shading language version string: 4.40
OpenGL version string: 4.4.13374 Compatibility Profile Context 15.20.1013
OpenGL shading language version string: 4.40

And it works, we now have the AMD Catalyst driver under Fedora 22 without downgrading Xorg !

Leave a Reply

10 Comments on "Installing proprietary AMD Catalyst Driver under Fedora 22"

Notify of
Sort by:   newest | oldest | most voted
Fernando Cassia
My mind is blowing. Does this driver support the from AMD E2 APU? In other words, AMD chipsets before Graphics Core Next (GCN) Architecture ? <R7 series, R9 series ?? What I have on my AMD E2 APU powered Zotac Mini-PC is allegedly a Radeon HD 7340. From what I was able to gather, the last driver to support HD7xxx chipsets was the catalyst 14.6 beta (please correct me if I'm wrong). Other distros package this driver (eg Debian) as " fglrx-legacy-driver ". CentOS/RHEL/SL provide this "kmod" "kmod-fglrx-legacy provides the legacy AMD/ATI driver kernel module (fglrx.ko). It is… Read more »

[…] jump to the shortcut area here(at the bottom): installing the new driver. In so many […]


slightly modified but so much the same method without compiling a line of code:


dont mind the pingback. Im piggy backing chapeau into a new spin but these damn drivers are a killer.nvidia can at least use the combined arch driver set and away they go, but not so for ati. did a glxinfo and theres the problem….FAIL! no wonder 2d is lousy and 3d iffy…

Muresan Mihai

I keep getting Makefile:88: recipe for target ‘kmod_build’ failed
make: *** [kmod_build] Error 2
build failed with return value 2
[Error] Kernel Module : Failed to compile kernel module – please consult readme.
[Reboot] Kernel Module : dracut