Das ewige ATI Problem

Moin,

ich bin gerade dabei, den neusten ATI Treiber zu installieren. Bei
Code:
m-a a-i fglrx
kommt folgende Fehlermeldung
Code:
dh_testroot                                                                
 rm -f configure-stamp                                                       
 rm -f fglrx.ko fglrx.mod.c *.o libfglrx_ip.a                               
 rm -f .version .*.o.flags .*.o.d .*.o.cmd .*.ko.cmd                        rm -rf .tmp_versions                                                       
 rm -rf patch                                                              
  dh_clean                                                                    
 rm /usr/src/modules/fglrx/debian/control                                 
  rm /usr/src/modules/fglrx/debian/dirs                                      
 if [ -f /usr/src/modules/fglrx/debian/control.template ]; then \            
         cat /usr/src/modules/fglrx/debian/control.template >               
 /usr/src/modules/fglrx/debian/control; \                                    
         fi                                                                  
 if [ -f /usr/src/modules/fglrx/debian/postinst ]; then \                    
 mv /usr/src/modules/fglrx/debian/postinst   
 /usr/src/modules/fglrx/debian/fglrx-kernel-2.6.21-2-686.postinst; \         
         fi                                                                 
 dh_testdir                                                                 
 touch configure-stamp                                                      
 dh_testdir                                                                  
 /usr/bin/make -C /lib/modules/2.6.21-2-686/build                            
 SUBDIRS=/usr/src/modules/fglrx modules                                     
  make[1]: Entering directory `/usr/src/linux-headers-2.6.21-2-686'           
    CC [M]  /usr/src/modules/fglrx/firegl_public.o                           
  In file included from /usr/src/modules/fglrx/drm_proc.h:41,                 
                   from /usr/src/modules/fglrx/firegl_public.c:366:          
  /usr/src/modules/fglrx/drmP.h:126:1: warning: "DRM_DEBUG_CODE" redefined   ▒ 
  /usr/src/modules/fglrx/firegl_public.c:179:1: warning: this is the      
  location of the previous definition                        
  /usr/src/modules/fglrx/firegl_public.c:484: warning: initialization from                                                                             
 incompatible pointer type                                                   
  /usr/src/modules/fglrx/firegl_public.c: In function ?firegl_stub_open?:    
  /usr/src/modules/fglrx/firegl_public.c:607: warning: assignment discards   
  qualifiers from pointer target type                                       /usr/src/modules/fglrx/firegl_public.c: In function                  
  ?__ke_pci_find_device?:                                                     
  /usr/src/modules/fglrx/firegl_public.c:1863: warning: ?pci_find_device?     
  is deprecated (declared at include/linux/pci.h:470)                         
  /usr/src/modules/fglrx/firegl_public.c: In function ?__ke_do_mmap?:        
  /usr/src/modules/fglrx/firegl_public.c:1968: warning: assignment makes     
  pointer from integer without a cast                                        
  /usr/src/modules/fglrx/firegl_public.c: In function ?__ke_request_irq?:     
  /usr/src/modules/fglrx/firegl_public.c:2806: warning: passing argument 2  
  of ?request_irq? from incompatible pointer type                      
  /usr/src/modules/fglrx/firegl_public.c: In function 
  ?__ke_smp_call_function?:                                                  /usr/src/modules/fglrx/firegl_public.c:4330: warning: passing argument 1    
 of ?smp_call_function? from incompatible pointer type                       
 /usr/src/modules/fglrx/firegl_public.c: In function ?KCL_has_pat?:         
 /usr/src/modules/fglrx/firegl_public.c:4512: warning: passing argument 2   
 of ?constant_test_bit? from incompatible pointer type                       
 /usr/src/modules/fglrx/firegl_public.c:4512: warning: passing argument 2  
 of ?variable_test_bit? from incompatible pointer type                      
 /usr/src/modules/fglrx/firegl_public.c: At top level:                      
 /usr/src/modules/fglrx/firegl_public.c:5280: warning: ?kmem_cache_t? is     
 deprecated                                                                 
 /usr/src/modules/fglrx/firegl_public.c: In function ?KAS_ExecuteAtLevel?:   
 /usr/src/modules/fglrx/firegl_public.c:5139: warning: ?flags? may be        
 used uninitialized in this function                                        
   LD [M]  /usr/src/modules/fglrx/fglrx.o   
  Building modules, stage 2.                                               ; 
  MODPOST 1 modules                                                         
  FATAL: modpost: GPL-incompatible module fglrx.ko uses GPL-only symbol      
  'paravirt_ops'                                                             
  make[2]: *** [__modpost] Fehler 1                                        
  make[1]: *** [modules] Fehler 2                                            
  make[1]: Leaving directory `/usr/src/linux-headers-2.6.21-2-686'            make: *** [build] Fehler 2
Ich würde sagen, der Fehler liegt in Zeile 60/61
Code:
FATAL: modpost: GPL-incompatible module fglrx.ko uses GPL-only symbol        'paravirt_ops'
Google spuckt da zwar was aus, aber irgendwie ist das, was ich gefunden hab, für meine Englischkenntnnisse zu hoch. Ich hoffe ihr könnt mir mal wieder helfen...
 
Da du Kernel 2.6.21-2-686 nutzt, solltest du ein Kernel-Downgrade auf Kernel 2.6.18 machen. Das Problem existiert bisher explizit nur in der 2.6.21er-Reihe.
 
Ein Glück, dass ich den noch installiert hab. Werds da nochmal probieren und mich dann mal melden.
Achja, da hab ich grad noch eine Frage, mir ist irgendwie aufgefallen, dass alle Versionen, die eine gerade Zahl haben, die "stable" Versionen sind und die mit einer ungeraden die Entwickler. Stimmt das allgemein oder ist das nur eine zufällige Beobachtung?
 
Original von tanj
Achja, da hab ich grad noch eine Frage, mir ist irgendwie aufgefallen, dass alle Versionen, die eine gerade Zahl haben, die "stable" Versionen sind und die mit einer ungeraden die Entwickler. Stimmt das allgemein oder ist das nur eine zufällige Beobachtung?

Nicht ganz. Die ungeraden Versionsnummern haben meist noch einige bekannte "Macken", die noch nicht behoben sind, aber nicht kritisch für den Einsatz in Produktivumgebungen, während die Pakete mit gerader Versionierung keine bekannten Fehler haben. Leider halten sich immer weniger Projekte an diese Versionierung. Beim Kernel ist es aber bis heute der Fall. Die Entwickler-Versionen sind dann die git-Repositories, die mit linux-2.6.X-rcX-gitX (wobei X hier die aktuelle Entwicklerversion darstellt) bezeichnet werden.
 
Also kann man erst mit dem 22er Kernel rechnen, dass wieder alles "normal" läuft? Gibts da irgend eine Ankündigung wann der raus kommt oder kommt er dann raus, wenn er raus kommt?

B2T:
Jetzt hab ich den 18er Kernel gebootet, fang wieder beim Anfang an und jetzt kommt wieder bei
Code:
m-a a-i fglrx
Code:
Pech gehabt, es wurden keine zum aktuellen Kernel passende Headers gefunden und es wurden keine weiteren Kernel-Verzeichnisse angegeben.
Hmm. Na toll. Im nächsten Fenster wird einem Vorgeschlagen, dass man doch bitte die Header Datein installiert. Naja, wieso oft, sie sind vorhanden.
Code:
apt-get install linux-headers-2.6.18-4-all
Bestätigt mich, es ist alles vorhanden und auf dem neusten Stand. Bleibt mal wieder zu klären, wo jetzt den das Problem liegen mag.
 
Die Anleitung hast du mir beim letzten mal, wo ich einen ATI-Treiber installieren wollte auch gegeben. Irgendwo gabs dann Probleme, die vor mir noch niemand hatte. Irgendwann ließ sich, trotz misslungener durchführung deiner Anleitung der Treiber trotzdem installieren.

Mal schauen, was dieses Mal raus kommt...
 
Halte dich halt Schritt für Schritt dran. Ich denke, daß es eigentlich keine Probleme geben dürfte. Es sind mir nun schon mehr als ein Dutzend Leute bekannt, die mit dieser Anleitung erfolgreich gearbeitet haben. Wenn du die Anleitung nicht nutzen möchtest und lieber ausschliesslich mit den Headern arbeiten willst, dann schau mal nach, ob auch die richtigen Header-Dateien nach /usr/include verlinkt sind.
 
Ach ne, nicht schon wieder. Ich neh mir jetzt mal die Freiheit dich aus diesem Thread zu zitieren:
Code:
Du bist bisher der erste, bei dem es nicht funktioniert.

Code:
make oldkonfig
gibt heute, wie auch damals genau diese Fehlermeldung aus.
Code:
make[1]: *** Keine Regel, um ?/usr/src/linux-headers-2.6.18-4-686/scripts/kconfig/Makefile? zu erstellen.  Schluss.
make: *** [oldconfig] Fehler 2
Von "make oldkonfig" abgesehen ging alles Problemlos. Ich hab jetzt mal alles abgearbeitet, was du mir in dem alten Thread an Tipps gegeben hast. Hat leider nichts funktioniert. Ich kann dir leider auch nicht sagen, warum das damals plötzlich funktioniert hat.

Es wird vielleicht auch die Frage auf kommen, warum ich denn nicht bei meinem alten fglrx Treiber bleibe. Nun,
Code:
lsmod | grep fglrx
gibt nach dem Upgrade auf Lenny kein Output mehr, 3D Unterstützung fehlt.
 
Ich erinnere mich dunkel. Sind die korrekten Header nach /usr/include verlinkt? Was sagt 'ls /usr/include | grep asm'?
 
Sorry meinte 'ls -l | grep asm' damit man auch sieht ob das Links sind und worauf die verweisen. Spontan würde ich aber sagen, daß du die Header nicht korrekt verlinkt hast oder der 64bit-Ordner nicht der korrekt ist.
 
Naja, du mußt das 'ls -l' natürlich auf /usr/include machen. *gradseh* ;) Sorry, bin schon ziemlich müde. Ein wenig mitdenken mußt du daher schon. :) Ich hab das mit den 64bit-Headern jetzt im Howto auch noch eingefügt.
 
Code:
PC:/usr/include# ls -l | grep asm
lrwxrwxrwx 1 root root     34 2007-08-13 00:48 asm-generic -> /usr/src/linux/include/asm-generic
drwxr-xr-x 2 root root   4096 2007-07-17 13:01 asm-x86_64
 
So langsam denke ich darüber nach, ob nicht eine Neuinstallation von Etch sinnvoller wäre.

Also "make oldconfig" gibt jetzt das hier aus.
Code:
make[4]: *** [silentoldconfig] Fehler 1
mkdir: ?include/linux?: Zu viele Ebenen aus symbolischen Links
mkdir: ?include/config?: Zu viele Ebenen aus symbolischen Links
make[2]: *** [silentoldconfig] Fehler 1
mkdir: ?include/linux?: Zu viele Ebenen aus symbolischen Links
mkdir: ?include/config?: Zu viele Ebenen aus symbolischen Links
make: *** [oldconfig] Fehler 1

Jetzt hab ich zu viele symbolische Links. Wie bekomme ich die wieder los?
 
Sieht aus als haettest du einen rekursiven Directory-Link angelegt. Schau mal in's Verzeichnis ob du dort einen Link findest, der auf sein Ueberverzeichnis verweist.
 
Hmmm. Ne, hab ich nicht gefunden. Aber danke für deine Bemühungen, ich werd jetzt Lenny von der Platte schmeißen und Ubuntu installieren. Debian gehört wohl doch eher in den Serverbereich. Danke für deine Hilfe noch mal, aber mir ist es jetzt echt zu blöd mit Lenny.
 
Zurück
Oben