ATI-Treiber unter openSUSE installieren

aus openSUSE, der freien Wissensdatenbank

Die ATI-Treiber können wegen ihrer Lizenzbestimmungen nicht in openSUSE integriert werden. Diese Anleitung soll Ihnen helfen, sie richtig zu installieren.

Inhaltsverzeichnis


Installation des fglrx-Treibers per YaST

Schritt 1 - Hinzufügen der Installationsquelle

Starten Sie das YaST-Kontrollzentrum. Dort wählen Sie die Repositorium-Verwaltung. Klicken Sie auf Hinzufügen und wählen Sie das Protokoll http. Der Server ist www2.ati.com, das Verzeichnis /suse/<Version> wobei Sie "<Version>" durch ihre jeweilige openSUSE-Version, z.B."11.0" ersetzen. In openSUSE 11.0 können Sie auch Community/Gemeinschaftsrepositories" wählen und das ATI-Repository direkt per Klick hinzufügen.

Schritt 2 - Installieren des RPMs

Kehren Sie nun in die Paketverwaltung zurück und geben Sie im Suchfeld fglrx ein. Wählen Sie die Pakete x11-video-fglrxG01 und ati-fglrxG01-kmp-<Kerneltyp>. Sollten Sie nicht wissen, welchen Kerneltyp Sie installiert haben, können Sie dies mit dem Kommando uname -r nachprüfen. Diese Anleitung funktioniert jedoch nur für Grafikkarten, die von AMD/ATI noch unterstützt werden. Nachprüfen kann man dies hier. Nicht unterstützte Karten werden oft vom freien radeon-Treiber unterstützt.

Schritt 3 - Konfigurieren des Treibers

Fahren Sie fort bei der Konfiguration.

Manuelle Installation

Die manuelle Installation ist mit den aktuellen ATI-Treibern nicht mehr möglich. Hier finden Sie eine Anleitung, für den Fall, dass Sie noch eine alte Treiberversion besitzen sollten:

Schritt 1 - Pakete

Bitte vergewissern Sie sich, dass folgende Pakete installiert sind, bevor Sie mit dem Tutorial beginnen:

32-Bit-System

  • kernel-source
  • qt3
  • compat
  • compat-libstdc++
  • libstdc++
  • libstdc++-devel
  • libgcc
  • xorg-x11-libs
  • xorg-x11-devel
  • Mesa
  • Mesa-devel
  • fontconfig
  • fontconfig-devel
  • expat
  • freetype
  • freetype2
  • freetype2-devel
  • zlib
  • zlib-devel
  • gcc
  • make

64-Bit System

Es müssen zusätzlich zu den 64-bit-Versionen des Pakete aus der oberen Liste folgende 32-Bit-Pakete installiert sein.

  • kernel-source
  • compat-32bit
  • qt3-32bit
  • libstdc++
  • libgcc
  • xorg-x11-libs-32bit
  • xorg-x11-devel-32bit
  • Mesa-32bit
  • Mesa-devel-32bit
  • fontconfig-32bit
  • expat-32bit
  • freetype2-32bit
  • zlib-32bit
  • gcc
  • make

Schritt 2 - Kernel für neue Treiber aufbereiten

Dieser Schritt ist nicht notwendig, aber er sollte durchgeführt werden, wenn Sie vorher mit ATI-Treibern experimentiert haben.

Öffnen Sie die Konsole und führen Sie folgende Befehle aus:

   # su
   Passwort: <password>
   # cd /usr/src/linux
   # make mrproper
   # make cloneconfig
   # make modules_prepare
   # make clean

Falls Sie bereits einen Grafiktreiber installiert haben, müssen Sie unbedingt diesem Schritt folgen (als root/superuser):

Löschen des vorherigen fglrx-Grafiktreibers:

   # rpm -e $(rpm -qa | grep fglrx)


Schritt 3 - Den neuesten Treiber besorgen

Gehen Sie zu ATI's Support-Website und laden Sie den Treiberinstaller herunter. Achtung: Dies gilt jetzt nicht mehr. Die neueren Treiberversionen können kein distributionsspezifisches Paket für openSUSE erstellen. Es wird empfohlen den Weg über die ATI-Paketquellen zu gehen.

Falsch: man kann doch noch distributionsspezifische Pakete erstellen - man muss nur vorher das Paket "patch" installieren.

Schritt 4 - Distributionsspezifisches Treiberpaket erstellen

Loggen Sie sich aus und wählen Sie als Sitzungsart Textkonsolenmodus. Loggen Sie sich als root ein und wechseln Sie in das Verzeichnis, in das Sie den Installer heruntergeladen haben. Führen Sie den Installer aus:

   # sh ati-driver-installer-x.xx.x-<arch>.run --listpkg

Das listet die unterstützten Distributionen auf:

   ....
   SuSE/SUSE102-IA32
   SuSE/SUSE102-AMD64
   ....

Führen Sie jetzt folgenden Befehl aus, wobei <Version> durch die jeweilige, durch listpkg aufgeführte, eigene Distribution s-Version zu ersetzen ist. Für 32bit:

   # sh ati*.run --buildpkg SuSE/SUSE<Version>-IA32

Für 64bit:

   # sh ati*.run --buildpkg SuSE/SUSE<Version>-AMD64

Der ATI-Treiberinstaller hat nun ein Treiberpaket erstellt. Es befindet sich im lokalen Verzeichnis.

Schritt 5 - Installieren des Treiberpakets

Wechseln Sie in den Runlevel 3. Geben Sie dazu in der Konsole (als root) ein:

   # init 3

Loggen Sie sich ein und gehen Sie in das Verzeichnis des gerade erstellten Treiberpakets. Installieren Sie das Treiberpaket

   # rpm -Uvh fgl*.rpm



Konfigurieren des Treibers

Schritt 1 - aticonfig

Nach der Installation müssen Sie das aticonfig-Tool ausführen:

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

Schritt 2 - SaX2-Konfiguration

Nun muss der Treiber konfiguriert werden. Führen Sie dazu diesen Befehl aus:

   # sax2 -r -m 0=fglrx

Das zwingt Sax dazu, den fglrx-Treiber zu benutzen. Sax2 wird das Konfigurationsprogramm im X-Server starten. Tätigen Sie hier Ihre Einstellungen und starten Sie neu.

Schritt 3 - Composite-Erweiterung deaktivieren (optional)

In manchen Fällen deaktiviert die Composite Erweiterung ATI's Treibersupport für DRI und 3D-Beschleunigung. Bei den aktuellsten Treibern sollte es jedoch ohne weiteres funktionieren. Achtung: Dieser Schritt verhindert die Nutzung eines Compositing-Managers wie Compiz.

Um die Composite Erweiterung zu deaktivieren, editieren Sie die folgenden Zeilen am Ende der /etc/X11/xorg.conf Datei:

   Section "Extensions"
        Option "Composite" "false"
   EndSection

Hinweis: Es reicht nicht, die Zeilen zu löschen. Das würde nicht funktionieren da diese Erweiterung standardmäßig aktiviert ist.

Schritt 4 - Andere wichtige Einstellungen in der xorg.conf (optional)

Für bessere Stabilität können Sie die folgenden Änderungen im Bereich "Device" der xorg.conf vornehmen:

   Option      "BlockSignalsOnLock" "on"
   Option      "KernelModuleParm" "locked-userpages=0"
   Option      "OpenGLOverlay" "off"
   Option      "UseFastTLS" "2"
   Option      "UseInternalAGPGART" "no"
   Option      "VideoOverlay" "on"
   Option      "mtrr" "off"
   Option      "no_accel" "no"
   Option      "no_dri" "no"
   Option      "EnablePrivateBackZ" "no"
   Option      "backingstore" "true"

Schritt 5 - Neustart

Starten Sie das System neu. Dann sollten Sie beschleunigte 3D-Grafik haben.

   # reboot

Testen

Um sich zu vergwissern, dass wirklich die ATI-Treiber und nicht MESA aktiv ist, führen Sie folgenden Befehl in der Konsole:

   fglrxinfo

So oder ähnlich sollte das Ergebnis aussehen:

  OpenGL vendor string: ATI Technologies Inc.
  OpenGL renderer string: RADEON X850 PRO Generic
  OpenGL version string: 2.0.6473 (8.37.6)

Und so nicht:

  OpenGL vendor string: Mesa project: www.mesa3d.org
  OpenGL renderer string: Mesa GLX Indirect
  OpenGL version string: 1.2 (1.5 Mesa 6.5.1)

Wenn der Test "Mesa" ausgibt, folgen Sie den Troubleshooting-Schritten.

Ein anderer Befehl zum Testen ist:

   glxinfo

Um die 3D-Beschleunigung zu Testen:

   fgl_glxgears

Nun sollten Sie einen flüssig drehenden Würfel sehen. Hier sind die Ergebnisse eines Beispiel-Tests:

   # fgl_glxgears
   Using GLX_SGIX_pbuffer
   4217 frames in 6.0 seconds = 702.833 FPS
   4465 frames in 5.0 seconds = 893.000 FPS
   4705 frames in 5.0 seconds = 941.000 FPS
   5775 frames in 5.0 seconds = 1155.000 FPS
   6706 frames in 5.0 seconds = 1341.200 FPS
   6443 frames in 5.0 seconds = 1288.600 FPS
   7914 frames in 5.0 seconds = 1582.800 FPS
   6078 frames in 5.0 seconds = 1215.600 FPS
   6561 frames in 6.0 seconds = 1093.500 FPS

Falls dies funktioniert, sind die Treiber installiert und die 3D-Beschleunigung funktioniert. Wenn nicht, folgen Sie den folgenden Troubleshooting-Schritten:

Troubleshooting

Wenn sax2 hängen bleibt oder "Mesa" das Ergebnis des OpenGL-Checks ist, probieren Sie diese Schritte:

Schauen Sie zuerst in der Sax2-Log, um zu sehen welche Fehler passiert sind.

Schritt 1 - Kernel säubern

Gehen Sie in den Runlevel 3 und führen Sie folgende Befehle aus:

   # cd /usr/src/linux
   # make mrproper
   # make cloneconfig
   # make modules_prepare
   # make clean

Löschen Sie vorherige Treiber mit dem Befehl:

   # rpm -e $(rpm -qa | grep fglrx)

Schritt 2 - Treiber neu installieren

Installieren Sie den Treiber erneut:

   # rpm -Uvh --force fgl*.rpm

Schritt 3 - Treiber konfigurieren

Verwenden Sie ldconfig und aticonfig um die xorg.conf zu konfigurieren:

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

Siehe oben: andere wichtige Einstellungen für xorg.conf.

Nachdem Sie diese beiden Befehle ausgeführt haben, rebooten Sie und wechseln sie wieder in den Runlevel 3.

Schritt 4 - Treiber prüfen und einrichten

Nun vergewissern Sie sich, dass die Kernelmodule richig gebaut sind. In der Konsole:

   # fglrx-kernel-build.sh

Gefolgt von:

   # sax2 -r -m 0=fglrx -b /usr/share/doc/packages/fglrx/sax2-profile

Wenn das nicht geht probieren Sie das:

   # sax2 -r -m 0=fglrx

Achtung: Wenn Sax2 immer noch schwarze Bildschirme ausgibt, aktualisieren Sie zu der neuesten Version.

Composite und Xinerama

Die proprietären Treiber (fglrx) können nicht gleichzeitig zwei Bildschirme im Xinerama-Modus ansteuern und Composite Effekte ermöglichen. Man muss sich für eins entscheiden. Composite funktioniert also nur mit der folgenden Einstellung (getestet mit x11-video-fglrxG01-8.573-0.1):

   Section "ServerLayout"
      ...
      Option      "Xinerama" "off"
   EndSection

Die Composite Extension muss bei den proprietären Treibern nicht extra aktiviert werden. Dies geschieht automatisch, sobald der Xinerama Modus aus ist.