[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: nvidia-kernel-source und 2.6.5



Hallo

Michael Unterkalmsteiner (<miciu@gmx.de>) wrote:
> On Wed, Sep 08, 2004 at 04:24:00PM +0200, Andreas Janssen wrote:
>> Björn Schmidt (<bj-schmidt@uni-paderborn.de>) wrote:
>>> Michael Unterkalmsteiner wrote:
>> 
>>>> [nvidia-Kernelmodul und Kernel 2.6.5]
>>>> ./lib/modules/2.6.5/nvidia/nvidia.o
>>>> 
>>>> Müsste die Endung nicht .ko sein. Ich denke, hier wurde gar kein
>>>> Modul für den 2.6.5 gebaut. Kann mir hier jemand weiterhelfen?
>> 
>> Das ist in der Tat etwas seltsam. Von wo aus hast Du make-kpkg denn
>> aufgerufen?
> 
> In der Konsole, ohne geladenes nvidia-modul, uname -r gibt 2.6.5

Ich meinte: aus welchem Verzeichnis. Das sollte normalerweise
aus /usr/src/kernel-source-2.6.5 sein. Oder wo Deine Kernelquellen
sind. Das hast Du ja auch wohl so gemacht.

>>> Ja, Deine /usr/include/linux/* sind wahrscheinlich noch vom 2.4er
>>> Kernel. Da ist ein Wechsel angebracht...
> 
> Hm, hab ich mir auch schon gedacht, das hat mich aber vor zwei
> Fragen gestellt:
> 1. Kann ich den 2.4 Kernel noch nutzen (z.B. neue Nvidia oder andere
> Module für den 2.4 übersetzen)

Ja, der Nvidia-Treiber funktioniert auch mit 2.4.

> 2. Wie stell ich das an? Folgendes alles unter laufendem 2.6.5er:
> Habe ein make-kpkg --revision=custom.1.2 kernel_image gemacht. Ein
> dpkg --contents auf das Paket zeigt, dass alle Dateien unter
> /usr/src/kernel-headers-2.6.5 installiert werden würden.

Du meinst, Du hast make-kpkg kernel_headers aufgerufen? Das ist ist in
Deinem Fall eigentlich unnötig, wenn die Quellen installiert bleiben.
Die kernel-header-Pakete waren vor allem praktisch, um Treiber für
vorgefertigte Debian-Kernel zu übersetzen, ohne die kompletten Quellen
zu installieren und konfigurieren zu müssen.

>> Der Treiber sollte gegen die Header des /benutzten/ Kernels gebaut
>> werden, nicht gegen die in /usr/include. Deshalb:
> 
> Du meinst die unter /usr/src/linux/include? (linux ist ein Link auf
> kernel-2.6.5)

Ja, die in /usr/src, die zu Deinem Kernel ehören. Die brauchst Du. Wenn
Du in dem Quellverzeichnis make-kpkg kernel_image aufgerufen hast, dann
sollte alles da und fertig konfiguriert sein.

> Ich benutze nvidia-kernel-source-1.0-6111-1, wenn ich mich recht
> an den build-output erinnere, nimmt er /usr/include.

Da befinden sich Header, die zum Paket libc6-dev gehören (oder
neuerdings im Paket linux-kernel-headers sind). Wenn Du den Treiber
dagegen baust, dann müsstest Du beim Laden einen Versionskonflikt
bekommen.

>> kernel-headers-$(uname -r) installieren, oder, falls das mit den
>> aktuellen nvidia-Treibern nicht (mehr) funktioniert,
>> kernel-source-2.6.5.
> 
> Meinst die selbst erstellte kernel-headers-2.6.5, oder per apt-get.

Wenn Du einen selbst übersetzten Kernel verwendest, dann brauchst Du
keine zusätzlichen Header oder Quellen installieren, denn die von Dir
verwendeten und konfigurierten Quellen sind ja wahrscheinlich schon
vorhanden.

>> [make-kpkg nvidia-Treiber]
> 
> Ich mache das ähnlich:
> cd /usr/src/kernel-source-2.6.5
> make-kpkg --revision=custom.1.2 modules_image
> 
> 
> Zusammenfassend:
> In /usr/include liegen noch die Kernel-header des
> 2.4er, also wird das Nvidia-Modul mit denen kompiliert (warum nimmt
> er nicht /usr/src/kernel-source-2.6.5/include, er installiert das
> Modul ja in /lib/modules/2.6.5/nvidia ?)

Keine Ahnung. Vielleicht ein Bug? Irgendwas übersehen? Schon mal
make-kpkg clean und make-kpkg modules_clean ausgeführt und es nochmal
probiert?

> Ist es sinnvoll die kernel-header-2.6.5 zu installieren und vor
> allem wie?

Nein, die Header gehören zu den entsprechenden kernel-image-Paketen.
Wenn Du einen selbst übersetzten Kernel benutzt, dann brauchst Du diese
Pakete nicht. 

Grüße
        Andreas Janssen

-- 
Andreas Janssen <andreas.janssen@bigfoot.com>
PGP-Key-ID: 0xDC801674 ICQ #17079270
Registered Linux User #267976
http://www.andreas-janssen.de/debian-tipps.html



Reply to: