Fglrx/FAQ

Aus Linupedia.org
Version vom 16. April 2007, 23:42 Uhr von Revealed (Diskussion | Beiträge) (Q: Wie aktiviere ich POSIX Shared Memory bei fglrx?: (Q: Posix))
Wechseln zu: Navigation, Suche
A T I   T R E I B E R   B U C H      I N S T A L L A T I O N   U N D   K O N F I G U R A T I O N
ATI: Einleitung - Radeon - RadeonHD - fglrx -> Installationsvoraussetzungen - Installation - Manuelle Installation - Installationprüfung - Problemlösungen - SaX2 - FAQ - ATI Schluss

Dieser Teil setzt Installationsvoraussetzungen voraus.

Der kritische Part – die Installation:

Hier muss jetzt eben als priviligierter "user“ gearbeitet werden also bevorzugt als "root". Die Installation kann wahlweise aus dem „Runlevel 3“ oder aber auch bei laufender „Xsession“ erfolgen. Die Framebuffer Unterstützung kann unter Umständen leider etwas gediegen ausfallen und deswegen kann es zu Darstellungsproblemen der grafischen Installeroberfläche kommen. Beispielsweise kann es je nach Auflösung des Framebuffers dazu führen, dass die "OK", "Abbrechen" oder "Weiter" -Buttons nicht geklickt werden können, weil sie ausßerhalb des sichtbaren Bereichs des Bildschirms abgezeigt werden. Darum wird jetzt davon ausgegangen, dass alle nachfolgenden Schritte im „Runlevel 3“ stattfinden oder dass mit „init 3“ dorthin gewechselt wurde und das ganze eben mit einem entsprechende berechtigten Account dem „rootaccount“. Und noch dazu, dass der Installer ausführbar gemacht wurde.


Als erstes muss in das Verzeichnis mit dem ATI Installer gewechselt werden:

cd /

Dann muss die Installation gestartet werden mit:

./ati-driver-installer-8.34.8*.run

Es kann hier leicht abgekürzt werden – durch tippen des Anfangs von dem gewünschten Dateinamen und anschließendes Drücken der Tabtaste. Dadurch wird der Dateiname automatisch vervollständigt. „./ati -->“


Die Installation sollte jetzt starten Hier kann immer gemacht werden, was der Installer vorschlägt – und am Ende der Installation wird noch dazu aufgefordert, die Installer-log Datei anzusehen.

Die erfolgreiche Installation sicherstellen:

Ob das Modul erfolgreich gebaut werden konnte und damit auch erfolgreich geladen werden kann, lässt sich anhand der folgenden Ausgabe von "modprobe" testen:

modprobe fglrx

Wenn dabei eine Meldung wie „FATAL: Not Found“ oder ähnliches kommt, dann gab es einen Fehler und dann sollte die fglrx-install.log Datei unter „/usr/share/ati/“ zur Diagnose herangezogen werden. Ein Editor der bei fast jeder Installation dabei ist, wäre beispielsweise „nano“, mcedit" oder „pico“. Also in dem Fall kann beispielsweise:

nano /usr/share/ati/fglrx-install.log

eingegeben werden und dann wird der Inhalt der Datei in dem gewählten Editor geöffnet und es können die eventuellen Fehler, falls sie kritisch waren, angesehen werden und anschließend mit dieser Information im Internet oder im Forum (bitte mit detaillierter Fehlermeldung) -- Hilfe gesucht werden.

Das sollte an dieser Stelle im Fehlerfall auch noch problemlos mit der alten xorg.conf und Framebuffer Unterstützung möglich sein. Da eigendlich nichts an der Systemkonfiguration verändert wurde, außer dem Versuch des vorbereiten des Kernelmoduls. Dieses ist dann aber aufgrund dessen, dass es nicht geladen wurde noch nicht aktiv. Und die xorg.conf wurde bei diesem Schritt auch noch nicht auf dieses Modul umgestellt.

Am Ende der Installation wird auch vermittelt, dass nun "aticonfig --initial" ausgeführt werden könne bzw. solle, um eben die oben erwähnte „xorg.conf“ mit dem Treibermodul vertraut zu machen bzw. upzudaten.

Erfolgreich geladenes Modul dann drei mal Anpassen der Xorg.conf:

Ati Installer hat vorgeschlagen, dies mit „aticonfig –initial“ zu Erledigen. Es gibt besonders bei SUSE aber die Möglichkeit das ganze mit SaX 2 zu Erledigen. Und auch noch eine Weitere bei der von einer leeren config datei aus gestartet wird. Aufgrund der Informationsflut wird versucht alle Varianten zu Schildern - Alle variationen gleichzeitig anzuwenden kann zu Problemen führen - den richtigen Dreh bei der Konfiguration erreicht man am besten durch manuelles editieren der Xorg.conf und verzichten auf gemischten Einsatz der Tools nach einer grundlegenden Initialisierung:



#1 Die Variante mit aticonfig auf eigene Faust

Ist Zeilen - bzw. Textbasierend und muss deswegen aus dem Terminal, der Konsole, oder beispielsweise im "Runlevel 3" ausgeführt werden. Das ganze wieder mit entsprechender Berechtigung, um Schreibzugriff auf die "xorg.conf" zu haben.

Um sich die Möglichkeiten des Befehls aticonfig Auflisten zu lassen, reicht die einfache Eingabe von

aticonfig

Dann werden Variationen und Parameter oder Schalter aufgelistet, mit denen die xorg.conf modifiziert werden kann. Vieles davon ist beispielsweise bei der Konfiguration eines Fernsehers sehr hilfreich. Die Ausgabe ist sehr lang und im "runlevel 3" kann das Problem auftauchen, dass nicht alles auf den Bildschirm passt. Hiermit sei Abhilfe geschaffen:

durch drücken von "SHIFT + BildAuf" bzw. "SHIFT + BildAb" kann ein Bildlauf erzielt werden.

Vorweg: Angenommen beim Befehl "aticonfig --initial" käme eine Fehlermeldung, dass die xorg.conf nicht gefunden weden könne, dann wird aticonfig durch den Schalter "--input=/etc/X11/xorg.conf" nachgeholfen. Eine vollständige "Single head" initialisierung müsste dann so aussehen:

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

Wenn jetzt beispielsweise eine einfache Desktopanordnung erwünscht ist, also ein einzelner Monitor (Single head), dann kann durch einfache Eingabe von:

aticonfig --initial

diese erwünschte vorkonfiguration der xorg.conf erfolgen.

Wenn dualhead genutzt werden möchte:

aticonfig --initial=dual-head --screen-layout=above

Dabei würden eben beispielsweise "dual-head" aktiviert und die Monitore übereinander angeordnet.


Wenn beispielsweise bei 2 Monitoren die Vorzüge des Bigdesktop ausgenutzt werden sollen, also die Horizontale oder Vertikale Anordnung der Monitore als eine große Arbeitsfläche, dann kann dies durch folgenden Schalter erreicht werden:

aticonfig --dtop=horizontal --overlay-on=1

wenn "horizontal" dabei durch "horizontal,reverse" ersetzt würde, dann würden die Monitore zwar horizontal angeordnet aber eben vertauscht also links wäre dann der Monitor welcher ursprünglich rechts angeordnet worden wäre.

Die Auflösung für die Monitore:

Diese kann mit folgenden Befehlen beispielsweise für "Monitor oder Screen 0" eingestellt werden:

aticonfig --resolution=0,1280x1024,1024x768,800x600,640x480

Wobei hier jetzt darauf geachtet werden muss, dass die erste Auflösung nach der "0" die Auflösung ist, mit welcher der Xserver starten wird. Und dass hier alle Auflösungen mit angegeben werden, die eventuell zum Start bestimmter Programme notwendig sind. Angenommen ein Programm würde 640x480 benötigen um Starten zu können, diese Auflösung wäre aber nicht angegeben, würde das in "Out of Sync" oder einer Fehlermeldung oder ähnlichem resultieren.

Die Auflösung für den 2. Monitor kann beispielsweise durch Eingabe von:

aticonfig --resolution=1,1280x1024,1024x768,800x600,640x480

Erfolgen; -- wobei hier "--resolution=0" durch "--resolution=1" für den nächsten Screen oder Monitor ersetzt wurde.

Erwähnenswert sind außerdem, auch wenn Fernseherkonfiguration noch nicht zu den Stärken dieses HowTo´s gehört, folgende Schalter:

--tv-info

Zeigt die momentane verwendete Geometrie des Fernsehers, das Fernseherformat und ob das Gerät physikalisch angeschlossen bzw. aktiviert ist.

Und es kann beispielsweise herausgefunden werden ob ein DVI Schirm überhaupt angesprochen werden kann durch Prüfen der Ausgabe von:

aticonfig --query-monitor

Welches informationen zu angeschlossenen und aktivierten Monitoren zurückliefern wird.


Detaillierte Einstellungsmöglichkeiten bitte selbst nachlesen. Beispielsweise ist es auch möglich die horizontale und vertikale Refreshrate oder "Hz" des Monitors einzustellen, wobei es aber stark auf die physikalischen Eigenschaften und Leistungsfähigkeit des zum Einsatz kommenden Gerätes ankommt. Falsche Einstellungen können dabei das Gerät beschädigen. Deswegen möchte hier an dieser Stelle nicht weiter darauf Eingegangen werden.

Da das aber ein ziemlich tiefgreifender Eingriff war, bitte den Rechner hier einmal neustarten und direkt mit einer Xsession weiterarbeiten vorerst immernoch als root. also:

reboot

#2 Die Variante mit aticonfig Von Hand

#3 Die Variante mit SaX 2

Eventuell möchte bevorzugt die Variante mit SaX 2 verwendet werdem. Mit dieser kann Beispielsweise als Benutzer einer Multimedia Tastatur mit Zusatztasten oder ähnlichem - eine solche direkt im SaX 2 mit angegeben werden. Was für viele ein guter Grund sein wird, dies nicht manuell in der xorg.conf erledigen zu Müssen. Wobei hier nochmals explizit darauf hingewiesen sollte, das bei gemischtem Einsatz der Konfigurationswerkzeuge Einstellungen durcheinander kommen können oder auch doppelteintragungen usw entstehen können. Es können auch die "aticonfig" - und die "SaX 2" -Methode kombiniert zum Einsatz kommen. Falsch ist keines von beidem. Beides hat Vorzüge. SaX 2 bietet auch eine grafische Unterstützung. Und ohne manuellen Eingriff wird wie später noch aufgezeigt wird dauerhaft nicht gearbeitet werden können. Jedoch bedarf es einer manuellen nachbearbeitung der Xorg.conf in beiden Fällen. Nur "aticonfig" sowie nur "sax2" oder gemischt. Und nochmals erreicht man eine ideale xorg.conf durch manuelles editeren und Anpassen.

Also zu SaX 2:

sax2 -m 0=fglrx

Der Befehl sagt "SaX 2", dass es das geladene Modul fglrx Verwenden solle. Im SaX2 Kann nun empfehlungsweise als Erstes die Tastatur ausgewählt - und direkt anschließend der Monitor mit gewünschter Wiederholfrequenz und Auflösung versorgt werden. Und das gewünschte Desktoplayout (beispielsweise Monitoranordnung) und Einstellungen zur Auflösung größe und Hz für den eventuell vorhandenen zweiten Monitor können auch gemacht werden.

Anschließend sollte das ganze einmal getestet und die Konfiguration auch Abgespeichert werden. Zum Abschluss wird dann eine Aufforderung erscheinen, ob man SaX2 verlassen woll. Das kann an dieser Stelle nach erfolgreicher Speicherung auch getan werden. An sich sollte der Treiber ab diesem Schritt schon mal "prinzipiell funktionsfähig" sein -- was auch "gediegen" heissen soll;

Da das aber ein ziemlich tiefgreifender Eingriff war, bitte den Rechner hier einmal neustarten und direkt mit einer Xsession weiterarbeiten vorerst immernoch als "root" Oder mit entsprechender Berechtigung ausgestattet. also:

reboot

Das ATI Controlpanel reparieren:

Das Panel beeinträchtigt nicht die Performance des Treibers! Wenn, es nicht funktioniert, es aber trotzdem ans Laufen gebracht werden soll -- dann wird (in diesem Howto) empfehlungsweise das Vorgehen in nachstehendem Thread empfohlen:

Der Trick hat unter 64 bit sowie 32 bit nachweislich funktioniert. Die Fehlermeldung fällt zwar in einigen Fällen anders aus aber die Lösung war meist die Selbe.

Q: Wie aktiviere ich POSIX Shared Memory bei fglrx?

A: Die Aktivierung von POSIX shared Memory kann hier nachgelesen werden:

Q: LIBGL_DEBUG=verbose fglrxinfo liefert ein unzufriedenstellendes Ergebnis?

A: Der fglrx Treiber sucht unter Umständen noch in alten Pfaden nach diversen Modulen und Dateien. Dazu müssen ggf. Symbolische Links gelegt werden. Diese werden am Besten gleich vorne weg überprüft:

64 Bit:

bitte das hier komplett anschauen: Aber Warnung! Die Pfade für die Symlinks im falle 64 bit sind vermutlich nicht korrekt - leider hat dem Atuor des Beitrages noch niemand auf die Frage geantwortet und: "er verwende mittlerer Weile eine 32 bit Installation bei der es einfacher sei an Lösungen heranzukommen": UNGELÖST: hilfe zu symbolischen links? Vermutlich müssen die Symlinks mit dem Verzeichnis X11R6 abgeglichen werden... Weil die Pfade die als Lösung für 32 Bit bekannt sind für eine 64 Bit Installation angepasst werden müssen.

32 Bit: Das Legen des Symbolischen Links erfolgt durch:

ln -sf /usr/X11R6/lib/modules/dri /usr/lib/dri

An dieser Stelle bitte gleich nochmal den Rechner Neustarten – damit die Änderungen wirksam werden. Danach bitte wieder mit einem "berechtigtem Account" oder auch als „root“ zur weiteren Konfiguration Anmelden.


In der Konsole sollte bitte die Ausgabe von:

ldconfig

direkt überprüft werden. Wichtig ist dabei darauf zu Achten, ob irgendetwas nicht „gemapt“ werden kann. Wenn „nichts“ ausgegeben wird, war die Konfiguration erfolgreich und es kann fortgefahren werden. Ansonsten bitte im Forum melden – generell bitte falls irgendwelche Schwierigkeiten auftreten, sollte nicht gezögert werden zu Fragen. Wenn selbst beispielsweise durch legen eines symbolischen links direkt eine Lösung erzielt werden konnte, sollte nochmals Neugestartet werden, damit die Ausgaben der folgenden Befehle möglichst authentisch sind:

den Start des Xservers testen

Dazu müsste am Besten eine Konsole gestartet und folgende prozeduren ausgeführt werden: (diese schnappen sich aus den in Verzeichnissen abgelegten Logdateien jeweils die Stellen mit EE; WW; enabled; disabled; usw... und geben sie aus.)

grep EE /var/log/Xorg.0.log

Dieses wird mit ziemlicher Sicherheit folgendes melden:

(EE) AIGLX error: dlsym for __driCreateNewScreen_20050727 failed(/usr/lib/dri/fglrx_dri.so:
undefined symbol: __driCreateNewScreen_20050727)
(EE) AIGLX: reverting to software rendering

Um das zu beheben muss die /etc/X11/xorg.conf manuell mit einem Editor nach Wahl von Hand angepasst werden. Der Fehler kommt zustande durch die Fehlende Unterstützung für AIGLX welches in Xorg aber standardmäßig aktiviert ist:

Section "ServerFlags"
   Option "AIGLX" "off"
EndSection 

Da hier an dieser Stelle sowieso gerade in der xorg.conf gearbeitet wird, sollte hier noch eine weitere Änderung vorgenommen werden, um nachstehender Meldung vorzubeugen:

Xlib: extension „Xfree86 -DRI“ missing on display “:0.0“

dazu gleich folgendes in der xorg.conf mit Abändern:

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

Hier bitte wieder Neustarten um die nachfolgenden Ausgaben auch wirklich sicherzustellen:

im Anschluss dann in der Konsole wieder:

grep WW /var/log/Xorg.0.log

Dabei wird viel Lärm ausgegeben, dem nicht unbedingt viel Beachtung geschenkt werden muss. Aber bei einigen war dort beispielsweise eine Warnung zur Displaysize dabei. Ähnlich dieser:

(WW) fglrx(0): Probed monitor is YYYxYYY mm, using Displaysize YYYxYYY mm

Falls das an dieser Stelle auch auftreten sollte, kann dies in der xorg.conf in der Sektion für Monitor auch entsprechend anpasst werden, um mit der Optimalen Displaysize arbeiten zu können. Dazu müsste die richtige "Probed Monitorsize" durch die Alte welche die Warnung verursachte ersetzt werden.

grep enabled /var/log/Xorg.0.log

Gibt aus, was erfolgreich "enabled" wurde – dabei ist ganz wichtig, das "Acceleration" erfolgreich gestartet werden konnte und "Direct rendering" auch.

grep disabled /var/log/Xorg.0.log

Zeigt was "deaktiviert" ist. Dabei sollten auf keinen Fall "Acceleration" und "Direct rendering" sein. Und dabei sollten jetzt auch richtiger Weise; - Extension "Composite" is disabled; und AIGLX disabled; - sein.

Weiteres Tuning für die xorg.conf bei sax2:

Hier einige Optionen die in der "xorg.conf" angepasst werden können. Diese können je nach Wunsch auch vorgenommen werden. Mit diesen Optionen und Einstellungen sei ein eher weniger Problembelasteter Betrieb möglich. Leider sind einige Einstellungen nur rar dokumentiert. Diesbezüglich müsste man sich dann auch wieder selbständig, - um detailliertes Wissen zu Erhalten weiter informieren:

AIGLX Deaktivieren wegen fehlender Unterstützung:

Section "ServerFlags"
  ...
  Option       "AIGLX" "off"
  ...
EndSection

Modules die geladen sein sollten:

Section "Module"
  Load         "dbe"
  Load         "type1"
  Load         "freetype"
  Load         "extmod"
  Load         "glx"
  Load         "v4l"
  Load         "dri"
EndSection

Sinnvolle Optionen für die Section Device:


Section "Device"

TLS Auf kompatiblen Modus stellen beispielsweise für wine bei Workstationprodukten:

  Option       "UseFastTLS" "2"

Fehlern vorbeugen:

#  Option       "KernelModuleParm" "agplock=0" ##Auskommentieren wegen Fehlermeldung.
   Option      "KernelModuleParm" "locked-userpages=0" ##Anstelle der auskommentierten ModuleParm Option


Undokumentierte -- und Einstellungen für Xgl:

  Option       "EnablePrivateBackZ" "no"
  Option       "backingstore" "true"
  Option       "XAANoOffscreenPixmaps" "true"
 
EndSection

erneut Fehlern vorbeugen:

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

Achtung! In der "xorg.conf" befinden sich manchmal doppelte Einträge - egal ob die Konfiguration mit aticonfig oder SaX 2 erstellt wurde - Auf Doppelteintragungen und deren Sinn ist eventuell zu Achten. - ggf. müssten alle Einstellungen entsprechend angepasst werden -

Ein Neustart ist nochmals bei Änderungen der eigenen Konfigurationsdatei zu Empfehlen!

Nach dem Neustart bitte das System testen

Anmerkung: Bitte wieder darauf Achten, dass "|" ein Verkettungszeichen oder eine "pipe" ist. Damit keine Verwechslungen vorkommen und das auf die Richtige Syntax geachtet wird.

Nachfolgende Befehle sollten keine Fehler melden:

ldconfig

Sollte keine Fehler melden.

grep EE /var/log/Xorg.0.log

Sollte keine "EE (Errors)" melden.

LIBGL_DEBUG=verbose fglrxinfo

Sollte keine Fehler oder "Wrong ELF class" oder ähnliches melden. --

glxgears

Sollte ein Fenster öffnen in dem sich "wheels" abzeichnen und im Terminal viele zufriedenstellende FPS Ausgaben liefern.

fgl_glxgears

Sollte ein Fenster öffnen, in dem sich ein drehender Würfel mit "wheels" als Texturierung Abzeichnet, ebenfalls mit gut und viel zufriedenstellenden FPS als Ausgabe im Terminal.

fglrxinfo

Sollte in etwa folgendes ausgeben:

display: :0.0 screen: 0
OpenGL vendor string: ATI Technologies Inc.
OpenGL renderer string: („Verwendete Radeon hier“)
OpenGL version string: 2.0.6334 (8.34.8) 

Und wenn jetzt alles In Ordnung ist, sollte zur Sicherheit ein Backup der erkämpften "xorg.conf" an einem sicheren Ort abgespeichert werden, um sie beispielsweise nach einem Kernelupdate oder im Fehlerfall wieder direkt einspielen zu können.

Q: Wie kann man fglrx deinstallieren?

A: Auf dieser Seite wird beschrieben, wie man fglrx je nach verwendeter Installationsmethode erfolgreich deinstallieren kann:

Q: Wie kann ich ein RPM mit dem Installer erstellen?

A: Lesen sie dazu bitte hier, wie ein RPM erstellt werden kann:

Q: Wie kann man nach einem Kernelupdate den Treiber erneut einbinden?

A: Angenommen ein Kernelupdate für die Distribution musste eingespielt werden, oder ein Patch oder Treiber musste in die Kernel integriert werden. Oder dieser wurde beispielsweise neugebaut oder neu Konfiguriert. Dann muss auch das Treibermodul erneut gebaut, beziehungsweise funktionsfähig gemacht werden. lesen Sie dazu bitte hier eine Mögliches Vorgehen nach:

Q: Ich verwende einen Treiber vor Version 8.35.5 und das CPL streikt!:

A: Das Panel beeinträchtigt nicht die Performance des Treibers! Man kann es jedoch trotzdem erfolgreich reparieren:


ATI: Einleitung - Radeon - RadeonHD - fglrx -> Installationsvoraussetzungen - Installation - Manuelle Installation - Installationprüfung - Problemlösungen - SaX2 - FAQ - ATI Schluss



Zurück zur Grafikkarten und Monitore