nvidia.ko

KDE, Gnome, Windowmanager, X11, Grafiktreiber und alles was dazu notwendig ist. Schau auch in den "Tipps und Tricks"-Bereich.
Antworten
Benutzeravatar
Josir
Beiträge: 267
Registriert: 16.08.2005 18:43:11
Wohnort: Schlaraffenland

nvidia.ko

Beitrag von Josir » 28.12.2007 01:27:42

Hallo.

Ich benutze seit Wochen, ja gar Monaten die NVIDIA-Linux-x86-100.14.11-pkg1-patched.run Treiber von Nvidia.
Es ist mir nicht möglich älltere Treiber oder neuere Treiber zu installieren da ich immer eine nvidia.ko Fehlermeldung bekomme.
Nun, jetzt habe ich gesehen das es neue Treiber gibt (169.07) - ich fange an sie zu installieren und dann:

Code: Alles auswählen

ERROR: Unable to load the kernel module 'nvidia.ko'.  This happens most
       frequently when this kernel module was built against the wrong or
       improperly configured kernel sources, with a version of gcc that differs
       from the one used to build the target kernel, or if a driver such as
       rivafb/nvidiafb is present and prevents the NVIDIA kernel module from
       obtaining ownership of the NVIDIA graphics device(s).
Jetzt frage ich mich, kann denn irgendjemand die Treiber installieren? Oder ist das mein Problem? Und was ist das Problem :?:

samweis2111
Beiträge: 100
Registriert: 17.12.2007 11:44:18
Wohnort: SWEDEN

Beitrag von samweis2111 » 28.12.2007 10:34:31

Hallo,

da steht ja 'ne Menge drin in der Fehlermeldung:
Du kompilierst ja den Treiber selbst.
Dazu brauchst Du mindestens die kernel-header des Kernels, den Du verwendest, d.h. wenn Du einen unveränderten Debian-Kernel verwendest, musst Du das passende linux-header Paket dazu installieren

Wenn Du einen selbstkompilierten Kernel verwendst, muss die kernel-source genau in dem Zustand vorliegen wie nachdem Du den Kernel kompiliert hast. Wenn Du danach noch einen anderen Kernel kompiliert hast als Du jetzt verwendest, musst Du Dir erst wieder die kernel-config aus /boot holen und den kernel neu kompilieren bzw. das Kernel Paket neu bauen, wenn Du mit kpkg arbeitest.

Dann darfst Du nicht für den Kernel und für den nvidia Treiber verschiedene gcc verwenden. Wenn Du also gcc "upgedatet" hast, stimmt der sicher nicht mit der Version überein, mit der Dein Kernel kompiliert wurde.

Und schließlich sagt Dir die Fehlermeldung, dass Du vielleicht probeweise mal Dein nvidiafb Modul de-aktivieren solltest, bzw. nachschauen, ob das geladen ist:
lsmod | grep nv
lsmod | grep riva

Vor dem Installieren des neuen Treibers solltest Du den alten de-installieren (das versucht aber der Nvidia Installer eigentlich automatisch).

Gruß

Oliver

Benutzeravatar
Josir
Beiträge: 267
Registriert: 16.08.2005 18:43:11
Wohnort: Schlaraffenland

Beitrag von Josir » 28.12.2007 18:41:17

Wow, danke für diese präziese Antwort.
Die kernel-header sind bei mir installiert. Es ist nicht das erste mal das ich etwas kompiliere.
Ich habe meinen kernel geändert, aber die sourcen haben es seidem nicht.
Aber: Der nvidiainstaller meckert am Anfang der Installation das meine gcc Version aktueller ist(gcc 4.2) und empfielt mir die Installation abzubrechen.Das tuhe ich auch und versuche es mit

Code: Alles auswählen

export CC=/usr/bin/gcc-4.1
zu umgehen.

Danach baut er das Modul aber ich bekomme obige Fehlermeldung.
Ich habe nachgeschaut und es sind jeweils Beide gcc Versionen installiert..
Was kann ich denn jetzt noch machen?

Ach so und das ist die Ausgabe von dem was geladen ist:

Code: Alles auswählen

josir@Hex:~$ lsmod | grep nv
nvidia               7248436  34 
i2c_core               20480  2 nvidia,i2c_i801
agpgart                32168  2 nvidia,intel_agp
josir@Hex:~$ lsmod | grep riva
josir@Hex:~$ 

samweis2111
Beiträge: 100
Registriert: 17.12.2007 11:44:18
Wohnort: SWEDEN

Beitrag von samweis2111 » 28.12.2007 20:19:23

Wenn Du nicht sicher bist, welcher gcc verwendet wird:
ln -s /usr/bin/gcc-4.1 /usr/bin/gcc

Den Link kannste danach ja wieder entfernen

Ansonsten hast Du ja einen nvidia Treiber. Der muss weg, bevor Du den neuen installierst.
Woher ist der? Wenn es ein Debian Paket ist, solltest Du es purgen, nicht nur de-installieren. Auch alles was dazu gehört:
apt-get --purge nvidia-glx nvidia-kernel....

Die beiden vertragen sich nämlich nicht. Das Nvidia Paket wird Dir die Dateien nicht nach Debian Standard installieren sondern nach, hm, ich weiß noch nicht einmal ob das Suse oder Redhat ist oder nur "the Nvidia way".
Jedenfalls würde ldconfig am Ende zwei Moduöle finden - und welches soll der Kernel dann laden?
Dazu X aus und auch das Modul "unloaden"
rmmod nvidia

Dann Pakete entfernen und den neuen Treiber bauen.
Es gibt übrigens Situationen, wo man sich freut, wenn man irgendwo eine xorg.conf für den vesa Treiber hat, von der man weiß, dass sie funktioniert. Dies könnte so eine Situation sein... :wink:

Gruß aus dem Norden

Oliver

Spasswolf
Beiträge: 3472
Registriert: 30.11.2005 10:32:22
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Wald

Beitrag von Spasswolf » 28.12.2007 20:26:22

Die Version des gcc mit der du das nvidia Modul kompilieren musst, muss die selbe sein, die beim Kernel benutzt wurde:

Code: Alles auswählen

cat /proc/version

Benutzeravatar
Josir
Beiträge: 267
Registriert: 16.08.2005 18:43:11
Wohnort: Schlaraffenland

Beitrag von Josir » 08.01.2008 20:27:57

Hallo.
Ich bin verwirrt und am aufgeben!

Code: Alles auswählen

Hex:/home/josir# cat /proc/version
Linux version 2.6.21-2-686 (Debian 2.6.21-6) (waldi@debian.org) (gcc version 4.1.3 20070629 (prerelease) (Debian 4.1.2-13)) #1 SMP Wed Jul 11 03:53:02 UTC 2007
Hex:/home/josir# gcc -v
...
gcc version 4.2.3 20071123 (prerelease) (Debian 4.2.2-4)
Hex:/home/josir# 
Also gut: Mein kernel wurde anscheindend mit gcc 4.1.3 gebaut; mein aktueller gcc ist 4.2.3..
Voller Optimismus habe ich es mit "export CC=/usr/bin/gcc-4.1.3" probiert aber der nvidiainstaller scheiterte an dem CC senitie check. Er meinte ich soll sichergehen das es diesen compiler gibt und das ich ihn habe uns so - Abbruch!

Was passiert wenn ich "export CC=/usr/bin/gcc-4.1" versuche weiss ich ja -> nvidia.ko :(

Ich habe keine nvidiatreiber aus der Packetverwalltung. Ich habe es immer gleich gemacht: datei runtergeladen, ausfürbar gemacht, x beendet, installer gestartet. Ich will jetzt auch nicht anfangen irgendwelche module zu entfernen! Das hat der installer immer automatisch gemacht und es funktioniert ja momentan Alles. Compiz läuft, Spiele ruckeln nicht...
Ich benutze hallt nur diese Urallttreiber.

Nja... vieleicht kaufe ich mir ja lieber mal eine ATI Karte :roll:

P.S: Danke für eure Antworten! Ist anscheinend kein gutes LinuxJahr für mich.

Benutzeravatar
beta1
Beiträge: 2565
Registriert: 01.05.2006 21:05:34
Lizenz eigener Beiträge: MIT Lizenz

Beitrag von beta1 » 08.01.2008 20:40:20

Hallo
Josir hat geschrieben: Aber: Der nvidiainstaller meckert am Anfang der Installation das meine gcc Version aktueller ist(gcc 4.2) und empfielt mir die Installation abzubrechen.Das tuhe ich auch
Ich hatte die gleiche Situation und ich habe auf der Stelle einfach weitergemacht.
Es hat wunderbar getan :P

Es muss aber nicht immer so sein.

Gruß beta1

Benutzeravatar
datoo
Beiträge: 570
Registriert: 27.05.2006 20:22:49
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Berlin

Beitrag von datoo » 08.01.2008 20:48:19

sicher wenn du auch zukünftig etwas zu tun haben willst dann kaufe dir ruhig eine Ati-Karte :wink:
an sonsten reicht es aber auch wenn du beim CC-check NO (nicht abbrechen) drückst.

http://wiki.debianforum.de/nvidia_von_nvidiaseite

samweis2111
Beiträge: 100
Registriert: 17.12.2007 11:44:18
Wohnort: SWEDEN

Beitrag von samweis2111 » 08.01.2008 20:58:43

sicher wenn du auch zukünftig etwas zu tun haben willst dann kaufe dir ruhig eine Ati-Karte
Wie wahr, wie wahr!....

Spasswolf
Beiträge: 3472
Registriert: 30.11.2005 10:32:22
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Wald

Beitrag von Spasswolf » 08.01.2008 21:26:28

Code: Alles auswählen

Linux version 2.6.21-2-686 (Debian 2.6.21-6) (waldi@debian.org) (gcc version 4.1.3 20070629 (prerelease) (Debian 4.1.2-13)) #1 SMP Wed Jul 11 03:53:02 UTC 2007 
Die Debian Version des Compilers ist 4.1.2, probier mal export CC=gcc-4.1.2.

Benutzeravatar
Josir
Beiträge: 267
Registriert: 16.08.2005 18:43:11
Wohnort: Schlaraffenland

Beitrag von Josir » 28.03.2008 18:21:34

Hallo.
Ich wollte nur mal schreiben wie es jetzt weitergegangen ist..
Ich habe alle Tipps ausprobiert und nix hatt geklappt.
Und im Wiki steht auch warum :

Code: Alles auswählen

Die Metode funktioniert nicht mit dem Kernel 2.6.21-x (Problem im Kernel)
Jetzt habe ich heute meinen kernel geupdated (auf 2.6.24-1), Treiber von der Nvidia Seite runtergeldaden und installiert ->
keine Probleme - er hat kurz wegen dem gcc gemeckert - da habe ich auf weitermachen geklickt und es funktioniert einwandfrei.

Es lag also an meinem kernel :?

Benutzeravatar
KBDCALLS
Moderator
Beiträge: 22360
Registriert: 24.12.2003 21:26:55
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Dortmund
Kontaktdaten:

Beitrag von KBDCALLS » 28.03.2008 18:56:52

Die Unterschiede könnten eventuell schon ausreichen, das die Nvidiakompilierung nicht richtig gelingt.

Code: Alles auswählen

matthias@biljana:~$ cat /proc/version
Linux version 2.6.21-2-k7 (Debian 2.6.21-6) (waldi@debian.org) (gcc version 4.1.3 20070629 (prerelease) (Debian 4.1.2-13)) #1 SMP Wed Jul 11 04:29:08 UTC 2007

matthias@biljana:~$ gcc-4.1 --version
gcc-4.1 (GCC) 4.1.3 20080114 (prerelease) (Debian 4.1.2-19)
Copyright (C) 2006 Free Software Foundation, Inc.
Dies ist freie Software; die Kopierbedingungen stehen in den Quellen. Es
gibt KEINE Garantie; auch nicht für MARKTGÄNGIGKEIT oder FÜR SPEZIELLE ZWECKE.

matthias@biljana:~$
Was haben Windows und ein Uboot gemeinsam?
Kaum macht man ein Fenster auf, gehen die Probleme los.

EDV ist die Abkürzung für: Ende der Vernunft

Bevor du einen Beitrag postest:
  • Kennst du unsere Verhaltensregeln
  • Lange Codezeilen/Logs gehören nach NoPaste, in Deinen Beitrag dann der passende Link dazu.

gms
Beiträge: 7798
Registriert: 26.11.2004 20:08:38
Lizenz eigener Beiträge: MIT Lizenz

Beitrag von gms » 28.03.2008 19:26:10

KBDCALLS hat geschrieben:Die Unterschiede könnten eventuell schon ausreichen, das die Nvidiakompilierung nicht richtig gelingt.
da müßten aber Debians gcc-Maintainer ordentlich etwas verpockt haben. Dann ist aber auch nicht der Unterschied in der Version die Ursache des Problems :wink:

Gruß
gms

Benutzeravatar
datoo
Beiträge: 570
Registriert: 27.05.2006 20:22:49
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Berlin

Beitrag von datoo » 28.03.2008 19:43:21

Es liegt am Kernel es gibt dafür auch einen Patch aber der 2.6.22 funktioniert wieder.

gms
Beiträge: 7798
Registriert: 26.11.2004 20:08:38
Lizenz eigener Beiträge: MIT Lizenz

Beitrag von gms » 28.03.2008 20:37:16

datoo hat geschrieben:Es liegt am Kernel es gibt dafür auch einen Patch aber der 2.6.22 funktioniert wieder.
ja genau, beim 2.6.21er war das Problem der GPL-only Export von "paravirt_ops".
Man mußte daher entweder den Kernel patchen oder ohne PARAVIRT übersetzen, oder einen Patch für den nVidia Treiber einsetzen.
Der ATI Treiber hatte natürlich das gleiche Problem ( siehe z.B hier http://www.debianforum.de/forum/viewtopic.php?t=89850 ), weil das in Wirklichkeit ein Bug in den Kernelsourcen war.

Gruß
gms

Antworten