Simple workaround to enable fglrx 10.3 on F12
I just wanted to share with you, that i got the newest catalyst driver working on F12, by following a simple guide to downgrade the Xorg.
I know its not an ideal fix, but its really great to finally get rid of some of the unfixed bugs in F11. And if/when fglrx works on F12 native xorg, it will only take 2 minutes to upgrade to the normal xorg version again. So why stay with F11 when you can use this fix and enjoy 3d-acceleration on F12!
I have been running F12 all day with no problems-
Just follow guide and install newest catalyst. I did not even need to enable SWCursor or any other nasty tricks.
xorg-RPMS for 64bit systems: http://www-user.tu-chemnitz.de/~sse/...und-bin.tar.gz
Compile your own with srpms: http://www-user.tu-chemnitz.de/~sse/...und-src.tar.gz
This document may provide you with a work-around to get
AMD/ATI's Catalyst drivers running with Fedora 12.
It was tested with a recent AMD/ATI Raedeon HD5000 series
graphics card and lead to a reasonably stable system with
3D acceleration. Most OpenGL applications seem to work as expected.
Activating desktop effects, however, locked up KDE (may be for
some unrelated reason). So your mileage may vary.
== before you start ==
A word of caution: following the steps in this document may leave
you with an unusable system. Before you start, backup your data and
if you follow the steps in this document, make sure each step
= Problem description =
Installing a recent version of the proprietary AMD/ATI Catalyst
drivers (e.g. release 10-2 or release 10-1) fails on Fedora 12.
The installer seems to run successful, but start of the X-server
fails with some message:
(II) LoadModule: "fglrx"
(II) Loading /usr/lib64/xorg/modules/drivers/fglrx_drv.so
dlopen: /usr/lib64/xorg/modules/drivers/fglrx_drv.so: undefined symbol:
(EE) Failed to load /usr/lib64/xorg/modules/drivers/fglrx_drv.so
(II) UnloadModule: "fglrx"
(EE) Failed to load module "fglrx" (loader failed, 7)
(EE) No drivers available.
= What causes this problem? =
Somewhere during the transition from the releases 1.6 to 1.7,
the Xorg server developers have decided to hide server-internal
programming interfaces from loadable modules. To enforce this,
a more strict control over exported symbols is established.
This is usually a good thing to do. However, in the case of
the AMD/ATI proprietary drivers, this does break compatibility
and leaves Fedora 12 users with no support of recent drivers.
= How to fix the issue? =
The most desirable resolution would clearly be to adopt the Catalyst
drivers to the new API. The developers at AMD/ATI, however, have not
yet been able to fix their driver code to use the new interface (see [http://ati.cchtml.com/show_bug.cgi?id=1696#c45]).
This is nothing unusual either, and given the successful launch of
a state-of-the-art family of graphics cards, with dozens of variants
and vendors these guys surely have some items on their
todo-list before that. So, there might not be any clean and ideal
solution to that issue soon.
= How to work around meanwhile? =
The idea is to replace the X server shipped with Fedora 12 with the
version from Fedora 11 which works with the API the AMD/ATI Catalyst
drivers expect. The official Fedora 11 packages, however, have some
dependencies which cannot be resolved on Fedora 12.
Please be aware that if you decide to do this surgery,
you are on your own. You should not complain about anything broken
in either Fedora 12 or the Catalyst drivers unless you have
verified the issue exists in a clean, supported system.
Said that, the following steps might get you a reasonably stable
system until the official driver supports Fedora 12:
== prepare your system ==
* install Fedora 12
* install available updates.
* install some package required by the installer
yum install kernel-headers kernel-devel gcc gcc-c++ make autoconf automake
* reboot to activate the proper kernel
* download the [http://support.amd.com/us/gpudownloa...5&lang=English proprietary AMD/ATI Catalyst driver]
* download (or prepare, see below) [http://www-user.tu-chemnitz.de/~sse/...und-bin.tar.gz recompiled versions of the Fedora 11 X server packages]
* untar the recompiled versions of the Fedora 11 xserver packages:
tar xzf ATI-Catalyst-workaround-bin.tar.gz
With the default Fedora 12 installation options, this should get you to a
working system with the Fedora 12 native driver providing some
(unaccelerated) X display.
The next step starts at the default (graphical) login-screen.
== downgrade and configure the X server packages ==
* press CTRL-ALT-F2 to get to the text console VT2.
* login as root
* change the current runlevel to 3 so that the X server gets terminated.
This will present you another console prompt at VT1:
* press CTRL-ALT-F2 to get back to your root session at VT2.
* uninstall any xorg-x11 drivers:
yum erase xorg-x11-server-common xorg-x11-server-Xorg xorg-x11-drv-*
* downgrade to Xorg 1.6.1:
rpm -Uhv ATI-Catalyst-workaround/rpms/xorg-x11-*.rpm
* install the proprietary AMD/ATI Catalyst driver.
Follow the menu and accept the defaults.
If successful, the installer finishes with a
'Finished, Installation complete!' message.
IMPORTANT NOTE: it is crucial that the installer finishes
successful, otherwise starting the server may lock up your
system. A typical reason for failing might be that you have
not completed all of the preparation steps (e.g. installing
the development packages and rebooting the system).</b>
* create an initial configuration file /etc/X11/xorg.conf
and change it to fit your needs:
* edit /etc/yum.conf and add the following line:
exclude=xorg-x11-server-common xorg-x11-server-Xorg xorg-x11-drv-*
This blocks any updates of the packages we had to uninstall
using the 'yum erase' command.
Using drivers written for the newer X-server internal
interface is not a good idea.
For example, updating to the evdev driver shipped with Fedora 12
will not work with this downgraded server and will
leave you without any working input devices.
== restart the X-server ==
You may be lucky by just changing the run-level back to 5:
sync; sleep 3; sync; init 5
On the author's machine, a reboot was neccessary, probably
for the proper kernel modules to get loaded or because
the graphics card was in a strange state from earlier experiments.
But after that, most things worked as expected.
= Preparing your own packages =
Recompiling your own packages is a bit tricky, as Fedora 12 provides some
more recent library versions of the X libraries. These seem to
break compilation of the 1.6.1 X-server so the following steps
might work for you too:
* install a clean Fedora 12 base system (in the package
customization step of the installer, deselect all options and
tick the 'customize now' radio button; then deselect all
packages in all groups).
* install available updates (kernel) and reboot
* install the usual development packages (rpm-build, gcc, gcc-c++, autoconf, automake, make)
* install the source RPMs from Fedora 11.Trying to rebuild the RPM fails for a lot of dependencies.
* satisfy the non-X11 dependencies from the Fedora 12 repository.
* satisfy any X11 dependencies (libX*) from the Fedora 11 repository. (luckily, it worked).
* fix the compilation errors (you may [http://www-user.tu-chemnitz.de/~sse/...und-src.tar.gz use the source rpms provided] to skip this step).
* install the resulting rpms following the instructions above.