openSUSE 11.3 – proprietären Grafik-Treiber ATI Catalyst 10.7 als RPM installieren

Hinweis: Dieser Artikel ist veraltet. Ein neuer Artikel befindet sich hier: openSUSE 11.3 – proprietären Grafik-Treiber ATI Catalyst 10.8 als RPM installieren

ATI Catalyst 10.7 unterstützt jetzt offiziell openSUSE 11.3. Da hat AMD/ATI richtig auf die Tube gedrückt. Eine tolle Neuigkeit: der neue 2D-Treiber scheint jetzt zu funktionieren. ;-)

[UPDATE 07.08.2010]
*** Achtung! *** Wichtige Meldung! ***
Mittlerweile wurde das ATI-Repo für openSUSE 11.3 aktualisiert bzw. freigegeben. Jedoch muss ich eindringlich warnen, dass es sich um den ältere ATI Catalyst 10.6 bzw. fglrx 8.741 handelt. Diese Version unterstützt nicht offiziell openSUSE 11.3 und kann sehr wahrscheinlich nach der Installation (ohne X-Konfiguration oder bei aktiviertem Kernel-Mode-Setting) zu einem Ausfall des Desktopsystem kommen. Die genannte ATI-Version aus dem ATI-Repo sollte man nach meiner Empfehlung besser NICHT installieren, sondern man nimmt stattdessen die neuere ATI Catalyst 10.7 (fglrx 8.753) mit der offiziellen Unterstützung für openSUSE 11.3.
[/UPDATE 07.08.2010]

Es gibt 2 Wege den Bau des RPM-Packages durchzuführen.

  1. das RPM mit dem Skript makerpm-ati-10.7.sh bauen (empfohlen)
  2. das RPM manuell bauen (für Fortgeschrittene)

Der Vorteil zu Punkt 1: man muss sich nicht um die nötigen Packages für den Bau kümmern und man spart sich die Tipparbeit, die Zeit und die Nerven. ;-)

Die Anleitung funktioniert mit geringer Abweichung auch unter openSUSE 11.2.

Wichtig: Bevor ihr irgendwelche Fragen an mich richtet, lest euch bitte sorgfältig diesen Artikel durch und achtet auch auf eure Eingaben in der Konsole wegen mögliche Tippfehler. Falls es Probleme geben sollte, schaut bitte unter Troubleshooting nach, ob euer Problem dort schon dokumentiert wurde.

Alle genannten Schritte müssen in der Konsole im Root-Modus ausgeführt werden. Die Installation des RPM-Package „fglrx“ kann im Runlevel 3 oder auch im Runlevel 5 durchgeführt werden. Danach ist ein Neustart des Computers auf jeden Fall erforderlich.

Vorhandene fremde fglrx-Treiber sind auf jedenfall zu deinstallieren, sonst kommt es zu Konflikten bei der Installation dieses selbstgebauten RPM-Package.

Mit fremde fglrx-Treiber sind z.B. folgende gemeint:
ati-fglrxG01-kmp-{default,desktop,pae,…}
ati-fglrxG02-kmp-{default,desktop,pae,…}
x11-video-fglrxG02

Vorhandene fremde fglrx-Treiber auflisten lassen:

rpm -qa | grep -E 'fglrxG01|fglrxG02'

Wenn hier von RPM eine Ausgabe erscheint, müssen diese Package deinstalliert werden:

zypper rm (packagename)

Alternativ kann man auch in YaST nach fglrxG01 bzw. fglrxG02 suchen und entfernen lassen.

RPM mit dem Skript bauen

Das Skript makerpm-ati-10.7.sh ist sehr mächtig, robust und läuft vollautomatisch. Der ATI-Installer wird automatisch heruntergeladen, falls er nicht schon im Verzeichnis liegt. Zudem wird geprüft, ob die Grafikkarte vom Treiber unterstützt wird. Auf dem System werden nach den nötigen Entwicklungspaketen geprüft und ggfs. installiert. Auf Wunsch wird nach dem Bau des RPM-Packages der fglrx-Treiber installiert.

Folgende Argumente können dem Skript übergeben werden:
-b – Nur das RPM-Package bauen (Standard)
-c <type> – Nur X-Server konfigurieren. Monitor-Typ: single = 1 Monitor, dual = 2 Monitore (Wichtig: Nur ausführen, wenn es Probleme mit der Standardkonfiguration des X-Servers auftreten)
-d – Nur den ATI-Installer downloaden
-i – Das RPM-Package bauen und installieren bzw. updaten
-kms <yes|no> – Kernel-Mode-Setting (KMS) aktivieren oder deaktivieren
-old2ddriver <yes|no> – den alten 2D-Treiber aktivieren oder deaktivieren
-ux – Nur den gepatchten X-Server installieren. Verbessert die Zusammenarbeit mit dem fglrx-Treiber. (dringend zu empfehlen)
-h – Die Hilfe anzeigen lassen
-V – Version des Skript anzeigen

Downloads:

Empfohlene Vorgehensweise:

Optional: Das System im Runlevel 3 starten oder wechseln:
Beim Booten: Im Bootmenü den Eintrag von openSUSE 11.3 selektieren und auf der Tastatur die Zahl „3“ und Enter drücken und als „root“ einloggen
Im laufenden System: STRG+ALT+F1 drücken und sich als „root“ einloggen. Danach mit folgendem Befehl in den Runlevel 3 wechseln:

init 3

1. Das Skript herunterladen:

wget http://www.sebastian-siebert.de/downloads/makerpm-ati-10.7.sh

2. Die Prüfsummendatei herunterladen:

wget http://www.sebastian-siebert.de/downloads/makerpm-ati-10.7.sh.sha1

3. Die Prüfsummendatei gegen das Skript prüfen:

sha1sum -c makerpm-ati-10.7.sh.sha1

Idealerweise sollte folgende Ausgabe erscheinen, andernfalls stimmt etwas mit dem heruntergeladenen Skript nicht:

makerpm-ati-10.7.sh: OK

4. Die Rechte des Skriptes ändern und ausführbar machen:

chown root:root makerpm-ati-10.7.sh && chmod 744 makerpm-ati-10.7.sh

5. Das Skript mit dem Argument -i ausführen. Das RPM-Package wird im Anschluß automatisch installiert.

./makerpm-ati-10.7.sh -i

6. Den Rechner neustarten:

reboot

Troubleshooting (RPM mit dem Skript bauen):

  • Sollte man nach dem Booten in der Konsole landen, dann erstellt man besser eine Konfigurationsdatei des X-Servers. In diesem Fall bitte als „root“ in die Konsole einloggen und das Skript mit folgendem Parameter ausführen lassen.

    Vorher noch in den Runlevel 3 wechseln:

    init 3

    Bei einem Monitor (Single-Modus):

    ./makerpm-ati-10.7.sh -c single

    Bei zwei Monitore (Dual-Modus):

    ./makerpm-ati-10.7.sh -c dual

    Danach den Rechner neustarten.

  • Falls die Arbeitsflächen-Effekte (Compositing) in KDE 4.4.4 nicht mehr aktiviert sind, weil vermutlich die Erkennung der OpenGL-Schnittstelle von AMD/ATI Catalyst 10.7 fehlschlägt. Hierzu gibt es eine einfache Lösung:
    1. Im KDE-Menü auf Systemeinstellungen klicken
    2. Unter Allgemein / Erscheinungsbild & Verhalten auf Arbeitsfläche klicken
    3. In Arbeitsflächen-Effekte einrichten auf den Tab Erweitert klicken
    4. Die Checkbox Funktionsprüfungen deaktivieren aktivieren
    5. Im Tab Allgemein prüfen, ob Compositing aktiviert ist. Falls nicht, bitte aktivieren.
    6. Abschließend auf Anwenden klicken

    Jetzt sollen die Effekte in KDE wieder funktionieren. Die 3D-Anwendungen bzw. 3D-Spiele sind von diesem Problem nicht betroffen.

  • Einige User haben mir berichtet, dass sie Probleme mit dem Kernel-Mode-Setting (KMS) haben. Das Problem läßt sich durch Deaktivierung des KMS-Modus teilweise beheben.
    ./makerpm-ati-10.7.sh -kms no
  • Falls unter Firefox oder Thunderbird schwarze Flächen erscheinen, dann liegt es in erster Linie an den neuen 2D-Treiber. Um den alten 2D-Treiber zu verwenden, führt man folgende Kommando aus.
    ./makerpm-ati-10.7.sh -old2ddriver yes

    Hinweis: Falls das Problem mit den schwarzen Flächen in 2D-Anwendungen in der nächsten Version behoben wurde, kann man es wieder deaktivieren:

    ./makerpm-ati-10.7.sh -old2ddriver no
  • Wenn das Compositing im OpenGL-Modus in KDE 4.5.0 nicht mehr aktivierbar sein sollte, dann wurde möglicherweise von KWin das Compositing komplett deaktiviert. Schuld ist die Einstellung OpenGLIsUnsafe=true in der Konfiguration /home/USERNAME/.kde4/share/config/kwinrc. Leider gibt es noch keine Möglichkeit diese Option in den Systemeinstellungen von KDE zu ändern.

    Man kann in der Konsole schnell und komfortabel für jeden User im Home überprüfen, ob man von dem Problem betroffen ist. Wenn bei dem nachfolgenden Befehl eine oder mehrere Dateien aufgelistet werden, so ist die Option von KWin bei dem jeweiligen User scharf geschaltet worden:

    grep -l "OpenGLIsUnsafe=true" /home/*/.kde4/share/config/kwinrc

    Es ist wichtig, dass der folgende Befehl im Runlevel 3 ausgeführt wird, sonst werden die Einstellungen von KWin wieder überschrieben. Wie man in den Runlevel 3 kommt, wird oben im Artikel beschrieben. Um das Problem mit „OpenGLIsUnsafe“ für alle User im Home-Verzeichnis zu beheben, gibt man folgenden Befehl als root in der Konsole ein:

    sed -i '/OpenGLIsUnsafe=.*/d' /home/*/.kde4/share/config/kwinrc

    Hintergrundinfo:
    Die Option OpenGLIsUnsafe kam mit der Revision 1079919 und wurde vom Autor Lucas Murray (lmurray) geschrieben. Allerdings ist ein Recheck-Button in der KDE-Einstellung laut einer TODO-Anmerkung im Quellcode in Zeile 156 geplant, um ggfs. die Option OpenGLIsUnsafe zurückzusetzen, was leider bisher noch nicht umgesetzt wurde.
    Quellcode von kwincompositing
    der Diff vom Quellcode zur Revision 1079919

RPM manuell bauen

Das ist der etwas schwierigere Teil. Aber es ist nicht unmöglich. :-)

Für den Bau des RPM-Packages werden folgende Entwicklungswerkzeuge bzw. -packages benötigt

  • gcc
  • make
  • patch
  • kernel-devel (openSUSE 11.2: linux-kernel-headers)
  • kernel-source
  • kernel-{default,desktop,pae,rt,vanilla,xen}-devel

Beim Kernel-Entwicklungspackage ist zu beachten, dass man die richtige installiert hat. Welchen Kernel zur Zeit auf dem System läuft, kann man in der Konsole abfragen:

uname -r

Bei mir ergibt beispielsweise diese Ausgabe:

2.6.34-12-desktop

Also muss im o.g. Fall der Kernel-Entwicklungspackage kernel-desktop-devel installiert sein.

Folgende Schritte werden auf einem 32bit openSUSE-System durchgeführt:
(64bit openSUSE-System weiter unten)

1. Den Installer des proprietären Treiber von ATI herunterladen:
https://a248.e.akamai.net/f/674/9206/0/www2.ati.com/drivers/linux/ati-driver-installer-10-7-x86.x86_64.run

Optional: Das System im Runlevel 3 starten und als „root“ einloggen oder per init 3 wechseln.

2. Den Bau des RPM-Packages anstoßen:

sh ./ati-driver-installer-10-7-x86.x86_64.run --buildpkg SuSE/SUSE113-IA32

3a. Das RPM-Package installieren (Neuinstallation):

rpm -ihv fglrx_7_5_0_SUSE113-8.753*.rpm

3b. Das RPM-Package installieren (Update):

rpm -Uhv fglrx_7_5_0_SUSE113-8.753*.rpm

4. Den Rechner neustarten:

reboot

Folgende Schritte werden auf einem 64bit openSUSE-System durchgeführt:

1. Den Installer des proprietären Treiber von ATI herunterladen:
https://a248.e.akamai.net/f/674/9206/0/www2.ati.com/drivers/linux/ati-driver-installer-10-7-x86.x86_64.run

Optional: Das System im Runlevel 3 starten und als „root“ einloggen oder per init 3 wechseln.

2. Den Bau des RPM-Packages anstoßen:

sh ./ati-driver-installer-10-7-x86.x86_64.run --buildpkg SuSE/SUSE113-AMD64

3a. Das RPM-Package installieren (Neuinstallation):

rpm -ihv fglrx64_7_5_0_SUSE113-8.753*.rpm

3b. Das RPM-Package installieren (Update):

rpm -Uhv fglrx64_7_5_0_SUSE113-8.753*.rpm

4. Den Rechner neustarten:

reboot

Troubleshooting (RPM manuell bauen):

  • Sollte man nach dem Booten in der Konsole landen, dann erstellt man besser eine Konfigurationsdatei des X-Servers. In diesem Fall bitte als „root“ in die Konsole einloggen und folgende Schritte durchführen.

    1. X-Server-Konfiguration verschieben, falls vorhanden:

    mv /etc/X11/xorg.conf /etc/X11/xorg.conf.backup

    2. Von aticonfig eine neue Konfigurationsdatei erzeugen lassen: (Das Tool aticonfig kann mittlerweile auch eine X-Server-Konfiguration from Scratch erzeugen, jedoch speziell auf den fglrx-Treiber zugeschnitten. Die restliche Hardware wird vom X-Server automatisch erkannt und geladen. Dies sollte in Zukunft vorgezogen werden, falls die Autoerkennung für den fglrx-Treiber oder X -configure nicht funktioniert):

    Bei einem Monitor (Single-Modus):

    aticonfig --initial

    oder bei zwei Monitore (Dual-Modus):

    aticonfig --initial=dual-head

    Hinweis: Falls man bereits in diesem Schritt das Tool aticonfig für die Erzeugung einer X-Server-Konfiguration verwendet hat, so entfallen die nachfolgenden Schritte 3, 3a, 3b.

    3. Die Konfigurationsdatei von aticonfig für die Nutzung des fglrx-Treibers modifizieren lassen.

    3a. Bei einem Monitor (Single-Modus):

    aticonfig --initial --input=/etc/X11/xorg.conf

    3b. Bei zwei Monitore (Dual-Modus):

    aticonfig --initial=dual-head --input=/etc/X11/xorg.conf
  • Falls die Arbeitsflächen-Effekte (Compositing) in KDE 4.4.4 nicht mehr aktiviert sind, weil vermutlich die Erkennung der OpenGL-Schnittstelle von AMD/ATI Catalyst 10.7 fehlschlägt. Hierzu gibt es eine einfache Lösung:
    1. Im KDE-Menü auf Systemeinstellungen klicken
    2. Unter Allgemein / Erscheinungsbild & Verhalten auf Arbeitsfläche klicken
    3. In Arbeitsflächen-Effekte einrichten auf den Tab Erweitert klicken
    4. Die Checkbox Funktionsprüfungen deaktivieren aktivieren
    5. Im Tab Allgemein prüfen, ob Compositing aktiviert ist. Falls nicht, bitte aktivieren.
    6. Abschließend auf Anwenden klicken

    Jetzt sollen die Effekte in KDE wieder funktionieren. Die 3D-Anwendungen bzw. 3D-Spiele sind von diesem Problem nicht betroffen.

  • Einige User haben mir berichtet, dass sie Probleme mit dem Kernel-Mode-Setting (KMS) haben. Das Problem läßt sich durch Deaktivierung des KMS-Modus teilweise beheben.

    Es gibt 2 Möglichkeiten KMS zu deaktivieren:

    1. Als Bootparameter: nomodeset
    2. KMS-Modus im Initial Ramdisk grundsätzlich deaktivieren. Einfach die Datei /etc/sysconfig/kernel zur Bearbeitung öffnen und die Zeile mit NO_KMS_IN_INITRD in NO_KMS_IN_INITRD=“yes“ ändern. Anschließend die Initial Ramdisk neubauen lassen:
      mkinitrd
  • Falls unter Firefox oder Thunderbird schwarze Flächen erscheinen, dann liegt es in erster Linie an den neuen 2D-Treiber. Um den alten 2D-Treiber zu verwenden, führt man folgende Kommando aus.
    aticonfig --set-pcs-str=DDX,ForceXAA,TRUE

    Hinweis: Falls das Problem mit den schwarzen Flächen in 2D-Anwendungen in der nächsten Version behoben wurde, kann man es wieder deaktivieren:

    aticonfig --del-pcs=DDX,ForceXAA
  • Wenn das Compositing im OpenGL-Modus in KDE 4.5.0 nicht mehr aktivierbar sein sollte, dann wurde möglicherweise von KWin das Compositing komplett deaktiviert. Schuld ist die Einstellung OpenGLIsUnsafe=true in der Konfiguration /home/USERNAME/.kde4/share/config/kwinrc. Leider gibt es noch keine Möglichkeit diese Option in den Systemeinstellungen von KDE zu ändern.

    Man kann in der Konsole schnell und komfortabel für jeden User im Home überprüfen, ob man von dem Problem betroffen ist. Wenn bei dem nachfolgenden Befehl eine oder mehrere Dateien aufgelistet werden, so ist die Option von KWin bei dem jeweiligen User scharf geschaltet worden:

    grep -l "OpenGLIsUnsafe=true" /home/*/.kde4/share/config/kwinrc

    Es ist wichtig, dass der folgende Befehl im Runlevel 3 ausgeführt wird, sonst werden die Einstellungen von KWin wieder überschrieben. Wie man in den Runlevel 3 kommt, wird oben im Artikel beschrieben. Um das Problem mit „OpenGLIsUnsafe“ für alle User im Home-Verzeichnis zu beheben, gibt man folgenden Befehl als root in der Konsole ein:

    sed -i '/OpenGLIsUnsafe=.*/d' /home/*/.kde4/share/config/kwinrc

    Hintergrundinfo:
    Die Option OpenGLIsUnsafe kam mit der Revision 1079919 und wurde vom Autor Lucas Murray (lmurray) geschrieben. Allerdings ist ein Recheck-Button in der KDE-Einstellung laut einer TODO-Anmerkung im Quellcode in Zeile 156 geplant, um ggfs. die Option OpenGLIsUnsafe zurückzusetzen, was leider bisher noch nicht umgesetzt wurde.
    Quellcode von kwincompositing
    der Diff vom Quellcode zur Revision 1079919

Feedbacks sind wie immer willkommen. :-)

openSUSE 11.2 – XOrg 7.5 (X-Server 1.8.0) + ATI Catalyst 10.6 (fglrx 8.741) laufen einwandfrei

Hinweis: Dieser Artikel ist veraltet. Ein neuer Artikel befindet sich hier: openSUSE 11.3 – proprietären Grafik-Treiber ATI Catalyst 10.7 als RPM installieren

Ein paar gute Nachrichten für Besitzer einer ATI Grafikkarte vorne weg. AMD hat still und heimlich einige Bugs behoben, die nicht mal in den Release Notes erwähnt wurden. ;-)

Zudem darf ich verkünden, dass endlich ATI Catalyst 10.6 mit XOrg 7.5 (X-Server 1.8.0) läuft. Das Patchen der X-Server-Version (von 1.8.0 auf 1.7.5.0) gehört nun der Vergangenheit an. (AMD war da doch schneller ;-) ) Leider bietet AMD noch nicht offiziell die Paketierung unter openSUSE 11.2 bzw. openSUSE 11.3 (RC1, RC2) für XOrg 7.5 an. Daher werde ich diesen Umstand mit einem Patch nachhelfen, um doch das Package zu erstellen. Neu ist, dass ich das Patch auch für openSUSE 11.3 (RC1, RC2) angepasst habe und man kann jetzt unter openSUSE 11.3 ebenfalls fglrx-Package erstellen.

Unter KDE 4.4.x funktioniert die Funktionsprüfung des openGL-Interface über den fglrx-Treiber wieder. Die Option findet man unter Systemeinstellungen -> Arbeitsfläche -> Arbeitsflächen-Effekte -> Erweitert -> Funktionsprüfung deaktivieren (den Haken wieder herausnehmen).

Jetzt kommen wir zu den schlechten Nachrichten, was sich leider nicht vermeiden lässt. Beim X-Server hat sich unter der Haube einiges geändert, so dass die automatische Konfiguration teilweise nicht mehr funktioniert und mit einer Konfigurationsdatei mittels

aticonfig --initial

nachgeholfen werden muss. Danach kann man wie gewohnt über die GUI amdcccle die Konfiguration der Grafikkarte bzw. Monitors einstellen. Zudem muss ich mit Bedauern feststellen, dass die Erstellung einer Konfigurationsdatei mittels

X -configure

auch nicht funktioniert.

Der Vollbildmodus mit einer anderen Auflösung (z.B. 1024×786) gegenüber der Desktopauflösung (z.B. 1680×1050) bei aktiviertem Compositing funktioniert immer noch nicht richtig. Hier muss man nach wie vor das Compositing mittels ALT+SHIFT+F12 vorübergehend deaktivieren, bevor man z.B. ein openGL-Spiel im Vollbildmodus laufen lassen möchte.

Bitte beachtet folgendes: Diese Installation ist nur für Fortgeschrittene, Entwickler oder zu Testzwecken gedacht. In der Regel wird XOrg 7.5 für openSUSE 11.2 noch nicht unterstützt, sondern erst mit openSUSE 11.3.

Hinweis zum SaX (SuSE advanced X Window System): In openSUSE 11.3 wird SaX nicht mehr geben. Der Grund ist, dass XOrg und weitere Komponente eine statische Konfiguration in /etc/X11/xorg.conf zum Teil unmöglich macht bzw. der Aufwand für die Implementierung zu groß ist. Mittlerweile kann XOrg 7.5 vollautomatisch die Eingabe- und Ausgabe-Geräte erkennen und im laufendem Betrieb einbinden. Moderne X-Window-Systeme wie Gnome oder KDE liefern bereits ein Bildschirmkonfigurationstool und weitere relevante Konfigurationstools aus. Novell hat sich daher entschieden SaX sterben zu lassen. Siehe auch http://lists.opensuse.org/opensuse-factory/2009-12/msg00017.html

[UPDATE 19.06.2010]
Dank eines aufmerksamen Leser (Johnny) hat er mich auf ein Fehler beim Bau eines fglrx-Treiber in openSUSE 11.3 (RC1, RC2) aufmerksam gemacht. Ich installierte openSUSE 11.3 (RC1, RC2) auf meinem Computer. Der Bau einer RPM verlief ohne Probleme. Jedoch der Bau eines fglrx-Kernelmodul schlug fehl. Das Problem lag darin, dass openSUSE 11.3 RC1 bzw. RC2 eine neue Kernel-Version 2.6.34 mitbringt, der von AMD/ATI noch nicht angepasst wurde. Ich habe dieses Problem mit einem kleinen Patch behoben, da offensichtlich ein

#include <linux/slab.h>

in kcl_wait.c fehlte. Nachdem ich den Patch nochmal getestet hatte und einwandfrei funktioniert, gebe ich ihn nun hiermit frei. Have a lot of fun. ;-)
[/UPDATE 19.06.2010]

[UPDATE 05.07.2010]
Soeben habe ich das Skript makerpm-ati-10.6-beta.sh für openSUSE 11.3 hochgeladen.

Downloads:

  • Skript: makerpm-ati-10.6-beta.sh
  • SHA1: makerpm-ati-10.6-beta.sh.sha1

Eine Anleitung zur Bedienung des Skriptes befindet sich hier:
http://www.sebastian-siebert.de/2010/06/17/opensuse-11-2-proprietaeren-grafik-treiber-ati-catalyst-10-6-als-rpm-installieren/
[/UPDATE 05.07.2010]

[UPDATE 18.07.2010]
Aufgrund zahlreicher Hinweise habe ich das Skript angepasst, um mögliche Probleme zu beheben.

Manche User haben Probleme mit dem Kernel-Mode-Setting (KMS). Man kann den Modus wie folgt abschalten:

./makerpm-ati-10.6-beta2.sh -kms no

Es wird eine neue Initial Ramdisk (initrd) ohne KMS erstellt.
Alternativ kann man auch einen Bootparameter setzen: nomodeset

Falls unter Firefox oder Thunderbird schwarze Flächen erscheinen, dann liegt es in erster Linie an den neuen 2D-Treiber. Um den alten 2D-Treiber zu verwenden, führt man folgende Kommando aus:

./makerpm-ati-10.6-beta2.sh -old2ddriver yes

Downloads:

[/UPDATE 18.07.2010]

Installationsanleitung

1. ATI-Installer 10.6 herunterladen:
http://support.amd.com/us/gpudownload/Pages/index.aspx

2. Patch für den ATI-Installer 10.6 herunterladen:
http://www.sebastian-siebert.de/downloads/ati-10.6-xorg-7.5.patch

3. Nur openSUSE 11.3: Patch für den fglrx 8.741 herunterladen:
http://www.sebastian-siebert.de/downloads/ati-10.6-fixed-missing-include.patch

4. ATI-Installer entpacken:

./ati-driver-installer-10-6-x86.x86_64.run --extract ati-10.6

5. In den ATI-Verzeichnis wechseln:

cd ati-10.6

6. Patch einspielen (Der Patch muss im ATI-Verzeichnis vorhanden sein):

patch -p1 <ati-10.6-xorg-7.5.patch

7. Nur openSUSE 11.3: Patch für den fglrx einspielen (Der Patch muss im ATI-Verzeichnis vorhanden sein):

patch -p1 <ati-10.6-fixed-missing-include.patch

8a. RPM bauen (32bit) unter openSUSE 11.2

./ati-installer.sh 8.741 --buildpkg SuSE/SUSE112-IA32-unofficial-Xorg75

8b. RPM bauen (64bit) unter openSUSE 11.2

./ati-installer.sh 8.741 --buildpkg SuSE/SUSE112-AMD64-unofficial-Xorg75

8c. RPM bauen (32bit) unter openSUSE 11.3

./ati-installer.sh 8.741 --buildpkg SuSE/SUSE113-IA32-unofficial-Xorg75

8d. RPM bauen (64bit) unter openSUSE 11.3

./ati-installer.sh 8.741 --buildpkg SuSE/SUSE113-AMD64-unofficial-Xorg75

9a. RPM installieren:

rpm -ihv fglrx*7_5_0*8.741*.rpm

9b. RPM updaten:

rpm -Uhv fglrx*7_5_0*8.741*.rpm

10. Nur openSUSE 11.2: Das Repository mit dem XOrg 7.5 in YaST hinzufügen:
http://download.opensuse.org/repositories/X11:/XOrg/openSUSE_11.2/

11. Nur openSUSE 11.2: In YaST alle XOrg-Pakete einschließlich Mesa, MesaGLw, libXi6, libdrm, libpciaccess0, libpixman und ggfs. sax2-tools vom o.g. Repo aktualisieren

12. Computer neustarten und freuen. ;-)

Kommentare und Erfahrungsberichte sind immer willkommen. ;-)

openSUSE 11.2 – XOrg 7.5 (X-Server 1.8.0) + ATI Catalyst 10.5 (fglrx 8.732) zum Laufen bringen

Hinweis: Dieser Artikel ist veraltet. Ein neuer Artikel befindet sich hier: openSUSE 11.2 – XOrg 7.5 (X-Server 1.8.0) + ATI Catalyst 10.6 (fglrx 8.741) laufen einwandfrei

Diese Anleitung wurde geschrieben, um den XOrg 7.5 (X-Server 1.8.0) und den Grafiktreiber ATI Catalyst 10.5 (fglrx 8.732) zum Laufen zu bringen.

Bitte beachtet folgendes: Diese Installation ist nur für Fortgeschrittene, Entwickler oder zu Testzwecken gedacht. In der Regel wird XOrg 7.5 für openSUSE 11.2 noch nicht unterstützt, sondern erst mit openSUSE 11.3. Sobald openSUSE 11.3 veröffentlicht wurde, werde ich ggfs. einen gepatchten X-Server (nur die interne Versionsnummer von 1.8.0 auf 1.7.5.0 wurde herunter gepatcht) zur Verfügung stellen (Falls AMD da nicht schneller ist als ich).

Hinweis zum SaX (SuSE advanced X Window System): In openSUSE 11.3 wird SaX nicht mehr geben. Der Grund ist, dass XOrg und weitere Komponente eine statische Konfiguration in /etc/X11/xorg.conf zum Teil unmöglich macht bzw. der Aufwand für die Implementierung zu groß ist. Mittlerweile kann XOrg 7.5 vollautomatisch die Eingabe- und Ausgabe-Geräte erkennen und im laufendem Betrieb einbinden. Moderne X-Window-Systeme wie Gnome oder KDE liefern bereits ein Bildschirmkonfigurationstool und weitere relevante Konfigurationstools aus. Novell hat sich daher entschieden SaX sterben zu lassen. Siehe auch http://lists.opensuse.org/opensuse-factory/2009-12/msg00017.html

Die neue XOrg 7.5 (X-Server 1.8.0) wurde wie auch schon in XOrg 7.4 (X-Server 1.6.5) mit einem Patch für die interne Minimalkonfiguration der fglrx-Section bestückt. Jedoch war der Patch wirkungslos, weil der fglrx-Treiber leider immer noch einen Bug hat und nicht im laufendem Betrieb von 8bit/16bit auf 24bit aufschalten kann. Somit kehrte man unweigerlich wieder in die Konsole zurück. Erst mit einem zusätzlichen Patch, den ich entwickelt und eingeliefert habe, wird eine weitere Option zur Minimalkonfiguration die Farbtiefe direkt festgelegt. Somit wird eine automatische Konfiguration möglich und man kann mit dem grafischen Tool „ATI Catalyst Control Center“ amdcccle weitere Einstellungen für die Grafikkarte vornehmen.

Es ist nach wie vor möglich eine Konfigurationsdatei ala /etc/X11/xorg.conf mittels

X -configure

zu erzeugen. Alternativ kann man auch mit

aticonfig --initial

eine o.g. Konfigurationsdatei für den fglrx-Treiber erzeugen.

Installationsanleitung

1. ATI-Installer 10.5 herunterladen:
http://support.amd.com/us/gpudownload/Pages/index.aspx

2. Patch für den ATI-Installer 10.5 herunterladen:
http://www.sebastian-siebert.de/downloads/ati-10.5-xorg-7.5.patch

3. ATI-Installer entpacken:

./ati-driver-installer-10-5-x86.x86_64.run --extract ati-10.5

4. In den ATI-Verzeichnis wechseln:

cd ati-10.5

5. Patch einspielen (Der Patch muss im ATI-Verzeichnis vorhanden sein):

patch -p1 <ati-10.5-xorg-7.5.patch

6a. RPM bauen (32bit)

./ati-installer.sh 8.732 --buildpkg SuSE/SUSE112-IA32-unofficial-XOrg75

6b. RPM bauen (64bit)

./ati-installer.sh 8.732 --buildpkg SuSE/SUSE112-AMD64-unofficial-XOrg75

7a. RPM installieren:

rpm -ihv fglrx*7_5_0*8.732*.rpm

7b. RPM updaten:

rpm -Uhv fglrx*7_5_0*8.732*.rpm

8. Das Repository (mit der gepatchten X-Server-Version) in YaST hinzufügen:
http://download.opensuse.org/repositories/home:/Freespacer:/X11:/XOrg75/openSUSE_11.2/

9. In YaST alle XOrg-Pakete einschließlich Mesa, MesaGLw, libXi6, libdrm, libpciaccess0, libpixman und ggfs. sax2-tools vom o.g. Repo aktualisieren

10. Computer neustarten und freuen. ;-)

Kommentare und Erfahrungsberichte sind immer willkommen. ;-)

openSUSE 11.2 – XOrg 7.5 (X-Server 1.8.0) + ATI Catalyst 10.4 (fglrx 8.723) = abenteuerliches Experiment

Gegen Ende April veröffentlichte AMD den neuen Grafiktreiber ATI Catalyst 10.4. AMD gab an, dass der Treiber auch mit der XOrg-Version 7.5 laufen sollte. Seit der Veröffentlichung unternahm ich den Versuch den fglrx-Treiber in der Version 8.723 unter XOrg 7.5 mit dem neuen X-Server 1.8.0 zum Laufen zu bekommen. :roll:

Zuallererst extrahierte ich den ATI-Installer 10.4 und spendierte ihm zwei weitere SPEC-Dateien (32bit und 64bit) zur Installation eines inoffiziellen XOrg-7.5-Treibers für openSUSE 11.2. Danach ließ ich vom Installer ein RPM-Paket bauen und installierte es im Anschluss. Die Installation funktionierte problemlos.

Der erste Versuch:
Ich installierte die neuen XOrg-Pakete aus dem bekannten openSUSE-Repo http://download.opensuse.org/repositories/X11:/XOrg/ und startete den Computer neu. Der X-Server quittierte seinen Dienst. In der Logdatei /var/log/Xorg.0.log fand ich folgenden Eintrag:

[atiddxSetup] X version mismatch - detected X.org 7.1.0.0, required X.org 7.5.1.0.

Öhm, detected XOrg 7.1?! 8-O Ich fing heftig an zu lachen :lol: und fand mich später auf dem Boden wieder. Nach etwa 10 Minuten konnte ich mich wieder beruhigen. ;-) Die Abfrage der Versionsnummer vom X-Server scheint bei AMD noch immer ein Problem (von vielen) zu sein. Wie dem auch sei. Ich dachte über mögliche Lösungen nach und hatte zum Schluss folgende Optionen:

  1. Den fglrx-Treiber auf binärer Ebene patchen. (Pfui!) :evil:
  2. Den X-Server selber patchen (Bäh!) :-x

Die 1. Option hatte ich ganz schnell begraben. Denn das wäre wirklich eine Sisyphusarbeit gewesen. Die 2. Option war jedenfalls machbar, aber für mich auch nicht wirklich die ideale Lösung. Es könnten auch andere Programme oder Treiber die X-Server-Version abfragen. Wohl eher eine Notlösung. :-?

Der 2. Versuch:
Um die besagte Notlösung durchzuführen, duplizierte ich das o.g. XOrg-Repo in meinem Repo und ersetzte die Versionsnummer vom X-Server von 1.8.0 auf 1.7.5.1 mit einem Patch. Da AMD anscheinend die Linux-Distribution Ubuntu 10.04 LTS zum Testen der Beta-Treiber den Vortritt gelassen hatte, schien es dort mit dem X-Server (1.7.5) zu laufen. Nachdem die Pakete in meinem Repo gebaut waren, installierte ich sie. Nach einem Neustart … (Trommelwirbel) … startete auch endlich der X-Server und KDE 4.4.2 mit dem fglrx-Treiber. :mrgreen:

Okay, dann ging ich gleich auf die Fehlersuche und wurde leider fündig. Es waren noch einige Fehler vorhanden, die auch in der letzten ATI-Version 10.3 nicht behoben waren. :-?

Hier nur einige Bugs mit dem fglrx-Treiber unter KDE 4.4.2:

  • Compositing ließ sich nicht aktivieren. Lösung: Systemeinstellungen → Arbeitsfläche → Arbeitsflächen-Effekte → Tab: Erweitert → Funktionsprüfungen deaktivieren
  • Bei aktiviertem Compositing im Zusammenspiel mit 3D-Anwendungen oder 3D-Spiele im Vollbildmodus stürzte Compositing ab (Schwarzer Bildschirm). Man konnte nur noch das Compositing per ALT+SHIFT+F12 beenden und die Sitzung neustarten. Besser ist es hier Compositing vorübergehend mit o.g. Tastenkürzel auszuschalten und dann die 3D-Anwendungen oder 3D-Spiele starten. Ausnahme: Wenn die 3D-Anwendung (bzw. 3D-Spiel) die gleiche Bildschirmauflösung wie KDE verwendet, dann scheint es zu laufen.

Allerdings wurden auch einige schwerwiegende Fehler behoben:

  • Bei aktiviertem OpenGL-Bildschirmschoner stürzte das Compositing nicht mehr ab.
  • Der X-Server hängt sich nicht mehr auf, wenn man zur TTY1-6 (STRG+ALT+F1 – F6) umgeschaltet hatte und dort in den Runlevel 3 (init 3) und später wieder zurück in den Runlevel 5 (init 5) wechselte.

Installationsanleitung

Bitte beachtet folgendes: Diese Installation ist nur für Fortgeschrittene, Entwickler oder zu Testzwecken gedacht. Ich habe mich entschlossen, dass ich das Skript makerpm-ati-10.4.sh nicht erweitere. In der Regel wird XOrg 7.5 für openSUSE 11.2 noch nicht unterstützt, sondern erst mit openSUSE 11.3. Sobald openSUSE 11.3 veröffentlicht wurde, werde ich ggfs. einen gepatchten X-Server zur Verfügung stellen (Falls AMD da nicht schneller ist als ich).

1. ATI-Installer 10.4 herunterladen:
http://support.amd.com/us/gpudownload/Pages/index.aspx

2. Patch für den ATI-Installer 10.4 herunterladen:
http://www.sebastian-siebert.de/downloads/ati-10.4-xorg-7.5.patch

3. ATI-Installer entpacken:

./ati-driver-installer-10-4-x86.x86_64.run --extract ati-10.4

4. In den ATI-Verzeichnis wechseln:

cd ati-10.4

5. Patch einspielen (Der Patch muss im ATI-Verzeichnis vorhanden sein):

patch -p1 <ati-10.4-xorg-7.5.patch

6a. RPM bauen (32bit)

./ati-installer.sh 8.723 --buildpkg SuSE/SUSE112-IA32-unofficial-Xorg75

6b. RPM bauen (64bit)

./ati-installer.sh 8.723 --buildpkg SuSE/SUSE112-AMD64-unofficial-Xorg75

7a. RPM installieren:

rpm -ihv fglrx*7_5_0*8.723*.rpm

7b. RPM updaten:

rpm -Uhv fglrx*7_5_0*8.723*.rpm

8. Das Repository (mit der gepatchten X-Server-Version) in YaST hinzufügen:
http://download.opensuse.org/repositories/home:/Freespacer:/X11:/XOrg75/openSUSE_11.2/

9. In YaST alle XOrg-Pakete einschließlich Mesa, MesaGLw, libXi6, libdrm, libpciaccess0, libpixman, sax2 vom o.g. Repo aktualisieren

10. Computer neustarten und freuen. ;-)

Kommentare und Erfahrungsberichte sind immer willkommen. ;-)

openSUSE 11.2 – X-Server und ATI Catalyst Display Treiber (fglrx) zur Zusammenarbeit bewegen

Sax2 wird in openSUSE 11.3 nicht mehr zur Verfügung stehen, wie bereits auf Heise.de berichtet wurde. Erste Umsetzungen gibt es bereits in openSUSE 11.2, hier fällt die Konfigurationsdatei /etc/X11/xorg.conf im Vorfeld schon weg, als Fallback kann diese Datei jedoch wieder angelegt werden.

Es gibt zusätzlich noch die Möglichkeit per X -configure eine Konfigurationsdatei anlegen zu lassen. Jedoch treten in dieser Konstellation wie auch das automatische Laden des fglrx-Treiber Konflikte auf, in der nicht selten der X-Server nicht mehr startet und man wieder in der Konsole landet. Bei diesem beschriebenen Konflikt wird fälschlicherweise versucht den fglrx-Treiber mit einer niedrigeren Farbtiefe von 8 bit oder auch 16 bit zu initialisieren, woraufhin der Treiber und der X-Server ihre Dienste quittieren. Laut der FAQ auf der AMD/ATI-Webseite wird zur Zeit nur die Farbtiefe von 24 bit unterstützt.

Aus diesem Anlass habe ich mich mit diesem Problem beschäftigt und einen gepatchten X-Servers wegen dem Konflikt mit der Farbtiefe des fglrx-Treibers bereitgestellt. Der X-Server wird gezwungen die Farbtiefe beim fglrx-Treiber auf 24 bit fest zu legen. Danach startet der X-Server mit dem fglrx-Treiber ohne Probleme.

[UPDATE 07.04.2010]
Gute Nachricht für openSUSE-User! Der von mir erstellte Patch für den X-Server wurde für die kommenden openSUSE-Version 11.3 eingepflegt. Nicht desto trotz ist AMD/ATI jetzt am Zug, die Kompatibilität zwischen dem fglrx-Treiber und dem X-Server weiter auszubauen. (Siehe Heise.de) Die Aufnahme des Patches wurde von mir mit einer ausführlichen Begründung für eine Aufnahme beantragt (Nachzulesen im Bugreport https://bugzilla.novell.com/show_bug.cgi?id=593878). Somit dürfte der X-Server in der kommende openSUSE 11.3 mit dem fglrx-Treiber etwas besser zusammenarbeiten.


Es gibt 2 Möglichkeiten den gepatchten X-Server für openSUSE 11.2 zu installieren:

  • 1. Installationsanleitung in YaST2
  • 2. Installationsanleitung über die Konsole

Installationsanleitung in YaST2

1. YaST2-Kontrollzentrum starten

2. auf Software-Repositories klicken

3. im Dialogfenster „Konfigurierte Software-Repositorys“ unten auf Hinzufügen klicken

4. „URL angeben“ markieren

5. folgenden Repository-Name eingeben: X-Server

6. folgende URL eingeben: http://download.opensuse.org/repositories/home:/Freespacer:/X11:/XOrg/openSUSE_11.2/

7. die Einrichtung mit Okay schließen

8. auf den Repo-Namen X-Server klicken und die Priorität auf 90 setzen

9. mit OK die Konfiguration abschließen

10. im YaST2-Kontrollzentrum auf „Software installieren und löschen“ klicken

11. folgendes im Suchfeld eingeben: xorg-x11-server

12. unten auf den Tab „Versionen“ klicken

13. auf X-Server Repository wechseln (Bitte auf die richtige Systemarchitektur achten!)

14. nun auf Akzeptieren klicken und der gepatchte X-Server wird installiert.

15. Falls eine Konfigurationsdatei /etc/X11/xorg.conf existiert, kann diese für die automatische Konfiguration umbenannt, verschoben oder gelöscht werden.

16. nun den Rechner neustarten

Installationsanleitung über die Konsole

1. zu root werden:

su - root

2. Repository hinzufügen:

zypper ar -f "http://download.opensuse.org/repositories/home:/Freespacer:/X11:/XOrg/openSUSE_11.2/" "X-Server"

Ausgabe von zypper:

Adding repository 'X-Server' [done]
Repository 'X-Server' successfully added
Enabled: Yes
Autorefresh: Yes
URI: http://download.opensuse.org/repositories/home:/Freespacer:/X11:/XOrg/openSUSE_11.2/

3. Priorität des X-Server-Repository erhöhen:

zypper mr -p 90 "X-Server"

Ausgabe von zypper:

Repository 'X-Server' priority has been set to 90.

4. Repository-Cache erneuern lassen. Ggfs. den GPG-Schlüssel vom Repository mit immer (i) akzeptieren:

zypper ref

5. gepatchten X-Server installieren. Downgrade bitte bestätigen (Anmerkung: Es ist kein richtiger Downgrade, lediglich die Patch-Level-Version hat sich geändert):

zypper in -r "X-Server" xorg-x11-server-7.4-61.1

6. Falls eine Konfigurationsdatei /etc/X11/xorg.conf existiert, kann diese für die automatische Konfiguration umbenannt, verschoben oder gelöscht werden.

7. den Rechner neustarten

Nun, dürften die Probleme mit dem X-Server und dem fglrx-Treiber der Vergangenheit angehören.

Falls man doch eine Konfigurationsdatei benötigt, kann man sie sich entweder mittels

X -configure

oder per

sax2 -a

erstellen lassen.