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

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

ATI Catalyst 10.9 (fglrx 8.771) wurde veröffentlicht. Das Skript makerpm-ati-10.9.sh habe ich ebenfalls aktualisiert und steht ab sofort zum Download zur Verfügung.

Laut der Release Notes wurden folgende Bugs behoben:

  • System no longer fails while launching fgl_glxgears window when Anti-Aliasing and Desktop Effects are enabled
  • [SUSE 11.1] Hardware playback now functions properly
  • [openSUSE 11.3] Corruption no longer visible on Firefox while scrolling the window by dragging the scrollbar
  • [SUSE 11.2] With a DP display connected to the adapter, a hot-plugged DFP display will now light up properly in clone mode

[UPDATE 24.09.2010]
Seit dem neuen Kernel 2.6.34.7-0.3 wird der Bau eines fglrx-Kernelmodul fehlschlagen.

/usr/src/kernel-modules/fglrx/kcl_ioctl.c:196:5: error: implicit declaration of function ‘compat_alloc_user_space’

Die Ursache ist, dass die Funktion compat_alloc_user_space() für proprietäre Software/Treiber aus lizenzrechtlichen Gründen nicht mehr zur Verfügung steht.

Aus diesem Grund habe ich ein Patch generiert, um die Funktion compat_alloc_user_space() gegen arch_compat_alloc_user_space() zu ersetzen.

Patch: ati-10.9-replace-function-compat_alloc_user_space.patch

Das Skript makerpm-ati-10.9.sh habe ich angepasst. Es lädt automatisch den Patch herunter und wendet es an den Quellcode vom fglrx-Kernelmodul an. Bevor man das neu generierte Paket installiert, sollte man das alte Paket deinstallieren. Achtung: Bitte eine Sicherung von /etc/X11/xorg.conf machen, weil die Konfigurationsdatei bei der Deinstallation gelöscht wird.

Wer das RPM manuell baut, muss sich im Troubleshooting einlesen, wie man den Patch anwendet.
[/UPDATE 24.09.2010]

[UPDATE 26.09.2010]
Ich habe das Skript erneut aktualisiert. Der Patch für den o.g. Compiler-Fehler ist nicht mehr auf openSUSE 11.3 beschränkt.

Zudem habe ich noch ein sehr interessantes Feature zu verkünden, dass Zeit und Nerven spart. Denn ich habe ein Rebuild-Skript programmiert, dass sich im xdm-Initskript (wird vom X-Server für KDE, GNOME, etc. benötigt) einklinkt und so automatisch bei jedem neuen Kernel-Update das fglrx-Kernelmodul neu baut.

Der Vorteil ist, dass man nach einem Kernel-Update nicht (vielleicht auch nie) mehr in der Konsole landet oder ohne 3D-Unterstützung in die Desktopumgebung startet.

Das Rebuild-Skript kann man wie folgt herunterladen und installieren lassen:

./makerpm-ati-10.9.sh -irs

Falls man das Rebuild-Skript nicht mehr benötigt, so kann man es einfach restlos deinstallieren:

./makerpm-ati-10.9.sh -urs

Wenn es doch mal Probleme mit dem automatischen Bauen eines fglrx-Kernelmodules geben sollte, wird dazu eine Logdatei /var/log/fglrx-build.log mit den Compiler-Meldungen angelegt.

Ich habe soeben mit der Entwicklung einer GUI im Systemtray-Modus (für Update-Benachrichtigung und Installation) begonnen. Das Tool sollte hoffentlich Anwender wie auch Anspruchsvolle gleichermaßen zufrieden stellen. ;-)
[/UPDATE 26.09.2010]

Inhaltsverzeichnis

Einleitung

*** Wichtiger Hinweis zum ATI-Repo ***
Im ATI-Repo befindet sich noch der ältere ATI-Catalyst 10.6 (fglrx 8.741) Treiber. Daher empfehle ich den Treiber nicht unter openSUSE 11.3 zu installieren. Wenn man trotzdem diesen Treiber installiert, kann es unter Umständen passieren, dass das grafische Desktopsystem komplett ausfällt und nicht selten wird auch die Konsole völlig verzerrt, wobei man nur noch über den Failsafe-Modus wieder ins System kommt.

Diese Anleitung wie auch das Skript werden regelmäßig aktualisiert. Es lohnt sich daher öfter mal vorbeizuschauen oder im Feedreader zu speichern.

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

  1. das RPM mit dem Skript makerpm-ati-10.9.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 und openSUSE 11.1.

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 fglrx-Treiber aus dem ATI-Repo sind auf jeden Fall zu deinstallieren, sonst kommt es zu Konflikten bei der Installation dieses selbstgebauten RPM-Package.

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

Vorhandene 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 `rpm -qa | grep -E 'fglrxG01|fglrxG02'`

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

Hilfe, es funktioniert nicht!

Bitte haltet folgende Regel ein:

  1. Bei der Eingabe der Befehle auf mögliche Tippfehler überprüfen.
  2. Möglicherweise ist die Lösung für das Problem im Troubleshooting vorhanden.
  3. In Kommentaren lesen, ob eine Lösung zu einem Problem bereits existiert.

Wenn keines der o.g. Regel greift, dann könnt ihr mit eurem Anliegen an mich wenden. Damit ich euch helfen kann, müsst ihr erst vorarbeiten. Bitte ladet euch das Skript makerpm-ati-10.9.sh herunter und erstellt einen Report von eurem System in der Konsole:

su -c 'sh makerpm-ati-10.9.sh -ur'

Das Skript lädt das Report auf sprunge.us hoch und gibt anschließend einen Link aus. Diesen Link postet ihr in eurem Kommentar zusammen mit einer Beschreibung zu eurem Problem an mich. Ich werde mir euren Report anschauen und Hilfestellung geben, wo evtl. das Problem liegen könnte.

RPM mit dem Skript bauen

Das Skript makerpm-ati-10.9.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
-irs Das Rebuild-Skript /etc/ati/fglrxrebuild.sh installieren und im Initskript /etc/init.d/xdm einklinken. Das Skript sorgt dafür, dass bei jedem Kernel-Update das fglrx-Kernelmodul vor dem Start der Desktopumgebung gebaut wird. Es wird auch eine Logdatei /var/log/fglrx-build.log angelegt, um mögliche Compiler-Fehler festzuhalten.
-kms <yes|no> Kernel-Mode-Setting (KMS) aktivieren oder deaktivieren
-old2ddriver <yes|no> den alten 2D-Treiber aktivieren oder deaktivieren
-r|–report erstellt ein Report und speichert diese in eine Datei namens ati-report.txt
-u|–uninstall entfernt ATI Catalyst restlos vom System. Zuerst wird das fglrx-Package (falls vorhanden) vom System deinstalliert. Danach werden vorhandene ATI-Dateien und -Verzeichnisse entfernt. Hinweis: Falls das Rebuild-Skript installiert wurde, wird es ebenfalls entfernt und das Initskript /etc/init.d/xdm wiederhergestellt.
-ur|–uploadreport wie Option –report nur zusätzlich wird der Report auf einem NoPaste-Service sprunge.us hochgeladen und gibt bei Erfolg den Link zurück.
-urs Das Rebuild-Skript /etc/ati/fglrxrebuild.sh deinstallieren und das Initskript /etc/init.d/xdm wiederherstellen.
-ux openSUSE 11.2: 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:

Man benötigt hierfür die Konsole mit root-Rechten, um das Skript auszuführen.

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 Desktopsystem: Bitte vom System abmelden. Sobald die grafische Anmeldung erscheint den Tastenkürzel ALT+N oder STRG+ALT+F1 drücken, um in die Konsole umzuschalten. Dann mit dem User „root“ einloggen und mit folgendem Befehl in den Runlevel 3 wechseln:

init 3

1. Das Skript herunterladen:

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

2. Die Prüfsummendatei herunterladen:

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

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

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

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

makerpm-ati-10.9.sh: OK

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

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

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

./makerpm-ati-10.9.sh -i

6. Optional, aber empfohlen: Das Rebuild-Skript herunterladen und installieren. Das Skript klinkt sich vor dem Start von KDE, GNOME, etc. ein und baut automatisch nach jedem Kernel-Update das fglrx-Kernelmodul neu.

./makerpm-ati-10.9.sh -irs

7. Den Rechner neustarten:

reboot

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 / openSUSE 11.1: linux-kernel-headers)
  • kernel-source
  • kernel-{default,desktop,pae,rt,vanilla,xen}-devel
  • kernel-syms

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.4-0.1-desktop

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

Folgende Schritte werden auf einem 32-bit wie auch 64-bit 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-9-x86.x86_64.run

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

2a. (openSUSE 11.3 32-bit) Den Bau des RPM-Packages anstoßen:
(openSUSE 11.2: SuSE/SUSE112-IA32, openSUSE 11.1: SuSE/SUSE111-IA32)

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

2b. (openSUSE 11.3 64-bit) Den Bau des RPM-Packages anstoßen:
(openSUSE 11.2: SuSE/SUSE112-AMD64, openSUSE 11.1: SuSE/SUSE111-AMD64)

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

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

rpm -ihv fglrx*SUSE113-8.771*.rpm

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

rpm -Uhv fglrx*SUSE113-8.771*.rpm

4. Den Rechner neustarten:

reboot

Troubleshooting:

  1. Nach dem Booten sieht man die Konsole (Problem mit der Konfiguration des X-Servers)
  2. Nach dem Booten hat man einen schwarzen Bildschirm (Problem mit dem Kernel-Mode-Setting)
  3. Arbeitsflächen-Effekte (Compositing) in KDE 4.4 bzw. 4.5 ist nicht aktiviert
  4. Arbeitsflächen-Effekte (Compositing) in KDE 4.5 lassen sich gar nicht mehr aktivieren
  5. In Firefox oder Thunderbird erscheinen schwarze Flächen
  6. Im ATI Catalyst Control Center zeigt mir im Abschnitt „Informationen“ noch die alte ATI-Version an, obwohl ich den neuen Treiber installiert und neugestartet habe.
  7. Mein Treiber unterstützt meine Grafikkarte nicht. Was mache ich jetzt?
  8. Wenn ich den Treiber unter openSUSE 11.3 (Kernel 2.6.34.7-0.3) baue, dann bricht er immer wegen der Funktion compat_alloc_user_space ab.
  1. 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.

    einfache Variante:

    Vorher noch in den Runlevel 3 wechseln:

    init 3

    Bei einem Monitor (Single-Modus):

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

    Bei zwei Monitore (Dual-Modus):

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

    Danach den Rechner neustarten.

    Fortgeschrittene Variante:

    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 --input=/etc/X11/xorg.conf

    oder bei zwei Monitore (Dual-Modus):

    aticonfig --initial=dual-head --input=/etc/X11/xorg.conf
  2. Wenn man vor einem schwarzen Bildschirm sitzt und man weder die Konsole noch den Desktop sieht, dann liegt es höchstwahrscheinlich am neueingeführten Kernel-Mode-Setting (auch KMS genannt). Das Problem läßt sich durch Deaktivierung des KMS beheben.

    einfache Variante:

    Mit dem Skript das KMS dauerhaft deaktivieren:

    ./makerpm-ati-10.9.sh -kms no

    Fortgeschrittene Variante:

    Es gibt 2 Möglichkeiten KMS zu deaktivieren:

    • Als Bootparameter in GRUB oder LILO: nomodeset
    • KMS im Initial Ramdisk grundsätzlich deaktivieren. Der nachfolgende Befehl schaltet das KMS in der Konfiguration /etc/sysconfig/kernel auf NO_KMS_IN_INITRD=“yes“ aus.
      sed -i 's/NO_KMS_IN_INITRD=.*/NO_KMS_IN_INITRD="yes"/g' /etc/sysconfig/kernel

      Anschließend die Initial Ramdisk neubauen lassen:

      mkinitrd
  3. Falls die Arbeitsflächen-Effekte (Compositing) in KDE 4.4 bzw. 4.5 nicht mehr aktiviert sind, weil vermutlich die Erkennung der OpenGL-Schnittstelle von AMD/ATI Catalyst 10.9 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.

  4. Wenn das Compositing im OpenGL-Modus in KDE 4.5 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

  5. 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.

    einfache Variante:

    ./makerpm-ati-10.9.sh -old2ddriver yes

    Fortgeschrittene Variante:

    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:

    einfache Variante:

    ./makerpm-ati-10.9.sh -old2ddriver no
  6. Fortgeschrittene Variante:

    aticonfig --del-pcs=DDX,ForceXAA
  7. Im ATI Catalyst Control Center zeigt mir im Abschnitt „Informationen“ noch die alte ATI-Version an, obwohl ich den neuen Treiber installiert und neugestartet habe.

    Bitte in den Runlevel 3 starten und dort den Treiber mit dem Skript komplett entfernen lassen:

    ./makerpm-ati-10.9.sh -u

    Danach mittels mit dem Skript neuinstallieren:

    ./makerpm-ati-10.9.sh -i

    Abschließend neustarten.

  8. Mein Treiber unterstützt meine Grafikkarte nicht. Was mache ich jetzt? Hier kann man leider nur den Radeon-Treiber verwenden. Man öffnet die Konfigurationsdatei /etc/X11/xorg.conf.d/50-device.conf mit root-Rechten, um diese bearbeiten zu können. Einfach den Krunner mittels Tastenkürzel ALT+F2 öffnen und folgende Befehlszeile eingeben und abschließend mit Enter bestätigen:
    kdesu kwrite /etc/X11/xorg.conf.d/50-device.conf

    In der Zeile 4 bei Driver „radeon“ nimmt man vorne die Raute weg und speichert die Datei ab. Anschließend alle Anwendungen schließen und neustarten.

    Sollte man beim Neustart einen schwarzen Bildschirm bekommen, dann muss das KMS abgeschaltet werden. Bitte einmal diesen Workaround zum Abschalten von KMS im Failsafe-Modus durchführen.

  9. Wenn ich den Treiber unter openSUSE 11.3 (Kernel 2.6.34.7-0.3) baue, dann bricht er immer wegen der Funktion compat_alloc_user_space ab.

    Wer das Skript makerpm-ati-10.9.sh verwendet, ist davon nicht betroffen, weil das Skript automatisch das Patch einpflegt.

    Für alle, die manuell das Paket bauen, gilt diese Anleitung:

    1. Patch herunterladen:

    wget http://www.sebastian-siebert.de/downloads/ati-10.9-replace-function-compat_alloc_user_space.patch

    2. den ATI-Installer auspacken:

    ./ati-driver-installer-10-9-x86.x86_64.run --extract ati-10.9

    3. Patch anwenden:

    patch -p0 <ati-10.9-replace-function-compat_alloc_user_space.patch

    4. in den ATI-Verzeichnis wechseln:

    cd ati-10.9

    5. vom ATI-Installer das RPM-Paket generieren lassen:
    unter openSUSE 11.3 (32-bit)

    ./ati-installer.sh `./ati-packager-helper.sh --version` --buildpkg SuSE/SUSE113-IA32

    unter openSUSE 11.3 (64-bit)

    ./ati-installer.sh `./ati-packager-helper.sh --version` --buildpkg SuSE/SUSE113-AMD64

    Danach das generierte RPM wie gewohnt installieren.

Feedbacks sind wie immer willkommen. :-)

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

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

ATI Catalyst 10.8 (fglrx 8.762) wurde soeben veröffentlicht. Ich habe diese Anleitung stark überarbeitet. Zudem habe ich ein Inhaltsverzeichnis zwecks schnellem Navigieren hinzugefügt und den Troubleshootingbereich besser strukturiert. Das Skript makerpm-ati-10.8.sh kann nun einen umfassenden Report in einer Datei namens ati-report.txt erstellen und sammelt wichtige Informationen vom System. Zudem kann es den Report bei Bedarf auf den NoPaste-Service sprunge.us hochladen und gibt ein Link aus. Den Link kann man hier im Kommentarbereich oder in einem beliebigen Forum posten und unterstützt so auch die helfende Hand.

[UPDATE 28.08.2010]
Ich habe das Skript makerpm-ati-10.8.sh aktualisiert. Diesmal kann das Skript nicht nur installieren und konfigurieren, sondern auch mit der Option -u oder –uninstall ATI Catalyst deinstallieren und sämtliche vorhandene ATI-Dateien und Verzeichnisse werden restlos entfernt. In Zukunft sollten solche Dateileichen nicht mehr im System rumfliegen. ;-)

Sollte man die neueste ATI-Version installiert haben und der ATI Catalyst Control Center unerklärlicherweise noch die Version vom Vorgänger anzeigt, so sollte man den ATI Catalyst mittels dem Skript im Runlevel 3 komplett entfernen lassen und anschließend den Computer neustarten:

./makerpm-ati-10.8.sh -u

Danach kann man wieder wie gewohnt ATI Catalyst vom Skript installieren lassen:

./makerpm-ati-10.8.sh -i

[/UPDATE 28.08.2010]

Inhaltsverzeichnis

Einleitung

*** Wichtiger Hinweis zum ATI-Repo ***
Im ATI-Repo befindet sich noch der ältere ATI-Catalyst 10.6 (fglrx 8.741) Treiber. Daher empfehle ich den Treiber nicht unter openSUSE 11.3 zu installieren. Wenn man trotzdem diesen Treiber installiert, kann es unter Umständen passieren, dass das grafische Desktopsystem komplett ausfällt und nicht selten wird auch die Konsole völlig verzerrt, wobei man nur noch über den Failsafe-Modus wieder ins System kommt.

Diese Anleitung wie auch das Skript werden regelmäßig aktualisiert. Es lohnt sich daher öfter mal vorbeizuschauen oder im Feedreader zu speichern.

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

  1. das RPM mit dem Skript makerpm-ati-10.8.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 und openSUSE 11.1.

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 fglrx-Treiber aus dem ATI-Repo sind auf jeden Fall zu deinstallieren, sonst kommt es zu Konflikten bei der Installation dieses selbstgebauten RPM-Package.

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

Vorhandene 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 `rpm -qa | grep -E 'fglrxG01|fglrxG02'`

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

Hilfe, es funktioniert nicht!

Bitte haltet folgende Regel ein:

  1. Bei der Eingabe der Befehle auf mögliche Tippfehler überprüfen.
  2. Möglicherweise ist die Lösung für das Problem im Troubleshooting vorhanden.
  3. In Kommentaren lesen, ob eine Lösung zu einem Problem bereits existiert.

Wenn keines der o.g. Regel greift, dann könnt ihr mit eurem Anliegen an mich wenden. Damit ich euch helfen kann, müsst ihr erst vorarbeiten. Bitte ladet euch das Skript makerpm-ati-10.8.sh herunter und erstellt einen Report von eurem System in der Konsole:

su -c 'sh makerpm-ati-10.8.sh -ur'

Das Skript lädt das Report auf sprunge.us hoch und gibt anschließend einen Link aus. Diesen Link postet ihr in eurem Kommentar zusammen mit einer Beschreibung zu eurem Problem an mich. Ich werde mir euren Report anschauen und Hilfestellung geben, wo evtl. das Problem liegen könnte.

RPM mit dem Skript bauen

Das Skript makerpm-ati-10.8.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
-r|–report erstellt ein Report und speichert diese in eine Datei namens ati-report.txt
-u|–uninstall entfernt ATI Catalyst restlos vom System. Zuerst wird das fglrx-Package (falls vorhanden) vom System deinstalliert. Danach werden vorhandene ATI-Dateien und -Verzeichnisse entfernt.
-ur|–uploadreport wie Option –report nur zusätzlich wird der Report auf einem NoPaste-Service sprunge.us hochgeladen und gibt bei Erfolg den Link zurück.
-ux openSUSE 11.2: 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:

Man benötigt hierfür die Konsole mit root-Rechten, um das Skript auszuführen.

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 Desktopsystem: Bitte vom System abmelden. Sobald die grafische Anmeldung erscheint den Tastenkürzel ALT+N oder STRG+ALT+F1 drücken, um in die Konsole umzuschalten. Dann mit dem User „root“ einloggen und mit folgendem Befehl in den Runlevel 3 wechseln:

init 3

1. Das Skript herunterladen:

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

2. Die Prüfsummendatei herunterladen:

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

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

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

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

makerpm-ati-10.8.sh: OK

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

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

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

./makerpm-ati-10.8.sh -i

6. Den Rechner neustarten:

reboot

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 / openSUSE 11.1: linux-kernel-headers)
  • kernel-source
  • kernel-{default,desktop,pae,rt,vanilla,xen}-devel
  • kernel-syms

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 32-bit wie auch 64-bit 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-8-x86.x86_64.run

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

2a. (openSUSE 11.3 32-bit) Den Bau des RPM-Packages anstoßen:
(openSUSE 11.2: SuSE/SUSE112-IA32, openSUSE 11.1: SuSE/SUSE111-IA32)

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

2b. (openSUSE 11.3 64-bit) Den Bau des RPM-Packages anstoßen:
(openSUSE 11.2: SuSE/SUSE112-AMD64, openSUSE 11.1: SuSE/SUSE111-AMD64)

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

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

rpm -ihv fglrx*SUSE113-8.762*.rpm

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

rpm -Uhv fglrx*SUSE113-8.762*.rpm

4. Den Rechner neustarten:

reboot

Troubleshooting:

  1. Nach dem Booten sieht man die Konsole (Problem mit der Konfiguration des X-Servers)
  2. Nach dem Booten hat man einen schwarzen Bildschirm (Problem mit dem Kernel-Mode-Setting)
  3. Arbeitsflächen-Effekte (Compositing) in KDE 4.4 bzw. 4.5 ist nicht aktiviert
  4. Arbeitsflächen-Effekte (Compositing) in KDE 4.5.0 lassen sich gar nicht mehr aktivieren
  5. In Firefox oder Thunderbird erscheinen schwarze Flächen
  6. Mein Treiber unterstützt meine Grafikkarte nicht. Was mache ich jetzt?
  1. 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.

    einfache Variante:

    Vorher noch in den Runlevel 3 wechseln:

    init 3

    Bei einem Monitor (Single-Modus):

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

    Bei zwei Monitore (Dual-Modus):

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

    Danach den Rechner neustarten.

    Fortgeschrittene Variante:

    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 --input=/etc/X11/xorg.conf

    oder bei zwei Monitore (Dual-Modus):

    aticonfig --initial=dual-head --input=/etc/X11/xorg.conf
  2. Wenn man vor einem schwarzen Bildschirm sitzt und man weder die Konsole noch den Desktop sieht, dann liegt es höchstwahrscheinlich am neueingeführten Kernel-Mode-Setting (auch KMS genannt). Das Problem läßt sich durch Deaktivierung des KMS beheben.

    einfache Variante:

    Mit dem Skript das KMS dauerhaft deaktivieren:

    ./makerpm-ati-10.8.sh -kms no

    Fortgeschrittene Variante:

    Es gibt 2 Möglichkeiten KMS zu deaktivieren:

    • Als Bootparameter in GRUB oder LILO: nomodeset
    • KMS im Initial Ramdisk grundsätzlich deaktivieren. Der nachfolgende Befehl schaltet das KMS in der Konfiguration /etc/sysconfig/kernel auf NO_KMS_IN_INITRD=“yes“ aus.
      sed -i 's/NO_KMS_IN_INITRD=.*/NO_KMS_IN_INITRD="yes"/g' /etc/sysconfig/kernel

      Anschließend die Initial Ramdisk neubauen lassen:

      mkinitrd
  3. Falls die Arbeitsflächen-Effekte (Compositing) in KDE 4.4 bzw. 4.5 nicht mehr aktiviert sind, weil vermutlich die Erkennung der OpenGL-Schnittstelle von AMD/ATI Catalyst 10.8 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.

  4. 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

  5. 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.

    einfache Variante:

    ./makerpm-ati-10.8.sh -old2ddriver yes

    Fortgeschrittene Variante:

    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:

    einfache Variante:

    ./makerpm-ati-10.8.sh -old2ddriver no
  6. Fortgeschrittene Variante:

    aticonfig --del-pcs=DDX,ForceXAA
  7. Mein Treiber unterstützt meine Grafikkarte nicht. Was mache ich jetzt? Hier kann man leider nur den Radeon-Treiber verwenden. Man öffnet die Konfigurationsdatei /etc/X11/xorg.conf.d/50-device.conf mit root-Rechten, um diese bearbeiten zu können. Einfach den Krunner mittels Tastenkürzel ALT+F2 öffnen und folgende Befehlszeile eingeben und abschließend mit Enter bestätigen:
    kdesu kwrite /etc/X11/xorg.conf.d/50-device.conf

    In der Zeile 4 bei Driver „radeon“ nimmt man vorne die Raute weg und speichert die Datei ab. Anschließend alle Anwendungen schließen und neustarten.

    Sollte man beim Neustart einen schwarzen Bildschirm bekommen, dann muss das KMS abgeschaltet werden. Bitte einmal diesen Workaround zum Abschalten von KMS im Failsafe-Modus durchführen.

Feedbacks sind wie immer willkommen. :-)

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 – proprietären Grafik-Treiber ATI Catalyst 10.6 als RPM installieren

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

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

  1. das RPM mit dem Skript makerpm-ati-10.6.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. ;-)

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.6.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
-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.2 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.6.sh

2. Die Prüfsummendatei herunterladen:

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

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

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

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

makerpm-ati-10.6.sh: OK

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

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

5. Das Skript mit dem Argument -ux ausführen. Es wird ein gepatchter X-Server installiert. (Diese Vorgehensweise wird empfohlen. Weitere Informationen findet ihr hier: X-Server und ATI Catalyst Treiber (fglrx) zur Zusammenarbeit bewegen)

./makerpm-ati-10.6.sh -ux

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

./makerpm-ati-10.6.sh -i

7. Den Rechner neustarten:

reboot

Troubleshooting (RPM mit dem Skript bauen):

  • Sollte man trotz gepatchten X-Server nach dem Booten in der Konsole landen, dann kann es evtl. an einer fehlerhaften Konfiguration des X-Servers liegen. 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.6.sh -c single

    Bei zwei Monitore (Dual-Modus):

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

    Danach den Rechner neustarten.

  • Falls die Arbeitsflächen-Effekte (Compositing) in KDE 4.4.3 nicht mehr aktiviert sind, weil vermutlich die Erkennung der OpenGL-Schnittstelle von AMD/ATI Catalyst 10.6 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.

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
  • 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.31.12-0.2-default

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

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

1. Den gepatchten X-Server installieren:
Anleitung: http://www.sebastian-siebert.de/2010/03/24/opensuse-11-2-x-server-und-ati-catalyst-display-treiber-fglrx-zur-zusammenarbeit-bewegen/

2. Den Installer des proprietären Treiber von ATI herunterladen:
http://support.amd.com/us/gpudownload/Pages/index.aspx

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

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

sh ./ati-driver-installer-10-6-x86.x86_64.run --buildpkg SuSE/SUSE112-IA32

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

rpm -ihv fglrx_7_4_0_SUSE112-8.741*.rpm

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

rpm -Uhv fglrx_7_4_0_SUSE112-8.741*.rpm

5. Den Rechner neustarten:

reboot

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

1. Den gepatchten X-Server installieren:
Anleitung: http://www.sebastian-siebert.de/2010/03/24/opensuse-11-2-x-server-und-ati-catalyst-display-treiber-fglrx-zur-zusammenarbeit-bewegen/

2. Den Installer des proprietären Treiber von ATI herunterladen:
http://support.amd.com/us/gpudownload/Pages/index.aspx

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

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

sh ./ati-driver-installer-10-6-x86.x86_64.run --buildpkg SuSE/SUSE112-AMD64

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

rpm -ihv fglrx64_7_4_0_SUSE112-8.741*.rpm

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

rpm -Uhv fglrx64_7_4_0_SUSE112-8.741*.rpm

5. Den Rechner neustarten:

reboot

Troubleshooting (RPM manuell bauen):

  • Sollte man trotz gepatchten X-Server nach dem Booten in der Konsole landen, dann kann es evtl. an einer fehlerhaften Konfiguration des X-Servers liegen. 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 SaX2 eine neue Konfigurationsdatei erzeugen lassen:

    sax2 -a

    oder alternativ mit aticonfig (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.3 nicht mehr aktiviert sind, weil vermutlich die Erkennung der OpenGL-Schnittstelle von AMD/ATI Catalyst 10.6 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.

Feedbacks sind wie immer willkommen. :-)