Wo und welche Header?

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
Benutzeravatar
Kaper
Beiträge: 1077
Registriert: 07.03.2005 19:22:07
Lizenz eigener Beiträge: MIT Lizenz

Wo und welche Header?

Beitrag von Kaper » 23.06.2005 14:11:27

Hallo,
ich wollte mir den NVidiatreiber für meine GeForce Fx5900Xt-Karte installieren. Da ich noch Anfänger bin, dachte ich mir, ich übe erst einmal ein bisschen. Also habe ich versucht, mir ein deb-Paket aus den SuperKaramba-Sourcen zu erstellen. Dabei bekomme ich dann die Meldung
"checking for KDE... configure: error: in the prefix, you've chosen, are no KDE headers installed. This will fail. So, check this please and use another prefix!
make: *** [config.status] Fehler 1"
Meine Frage ist nun, wo ich die KDE-headers her bekomme und welches die richtige Version ist. Ich habe KDE 3.3.2.
Für den NVidia-Treiber brauche ich ja dann die Kernel-headers. Auch da weiss ich nicht, welche Version ich brauche (AMD Athlon XP 2600+, Kernel 2.6.8-1-386, Sarge). Die Paketliste zeigt, dass es folgende Pakete gibt, von denen ich denke, dass sie am Nächsten kommen: "Package: kernel-headers-2.6.8-11 (2.6.8-14)" und "Package: kernel-headers-2.6.8 (2.6.8-12)" und "Package: kernel-headers-2.6-386 (101)".
Grüße,
Dirk

nepos
Beiträge: 5238
Registriert: 05.01.2005 10:08:12

Beitrag von nepos » 24.06.2005 11:59:33

Also, fuer KDE denke ich duerfte es das Paket kdebase-dev sein.
Bei den Kernel Headers sollte das Paket kernel-headers-2.6.8 passen denk ich mal.

Benutzeravatar
Kaper
Beiträge: 1077
Registriert: 07.03.2005 19:22:07
Lizenz eigener Beiträge: MIT Lizenz

Beitrag von Kaper » 25.06.2005 16:04:58

Vielen Dank. Was würde denn passieren, wenn ich das falsche Paket installiere?

Benutzeravatar
armin
Beiträge: 2682
Registriert: 17.03.2005 11:49:14

Beitrag von armin » 25.06.2005 16:14:00

Nichts!
Dann hast du halt was sinnloses auf der Platte rumliegen und den gleichen Fehler :lol:
Formerly known as Trigger.
HP 8510p - Debian Sid
Mitglied des Debian-KDE-Teams

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

Re: Wo und welche Header?

Beitrag von gms » 25.06.2005 21:04:28

Kaper hat geschrieben: Für den NVidia-Treiber brauche ich ja dann die Kernel-headers. Auch da weiss ich nicht, welche Version ich brauche (AMD Athlon XP 2600+, Kernel 2.6.8-1-386, Sarge). Die Paketliste zeigt, dass es folgende Pakete gibt, von denen ich denke, dass sie am Nächsten kommen: "Package: kernel-headers-2.6.8-11 (2.6.8-14)" und "Package: kernel-headers-2.6.8 (2.6.8-12)" und "Package: kernel-headers-2.6-386 (101)".
Du brauchst die Kernelheader für den Kernel, für den du den Treiber erstellen willst.
Willst du den Treiber für deinen aktuellen Kernel bauen, so zeigt dir das Kommando "uname -r" die Version der Kernels. Dann installierst du die Kernelheader mit der gleichen Versionsbezeichnung

Gruß
gms

Benutzeravatar
Kaper
Beiträge: 1077
Registriert: 07.03.2005 19:22:07
Lizenz eigener Beiträge: MIT Lizenz

Beitrag von Kaper » 25.06.2005 22:12:32

Dann installierst du die Kernelheader mit der gleichen Versionsbezeichnung
Das Problem ist, dass die Bezeichnung der angebotenen Header nicht genau meiner Kernelversion entsprechen. Uname -r ergibt: 2.6.8-1-386. Auf er Packages-Seite finde ich aber nur die erwänten Packete (Package: kernel-headers-2.6.8-11 (2.6.8-14)", "Package: kernel-headers-2.6.8 (2.6.8-12)" und "Package: kernel-headers-2.6-386 (101)"). Frage ist nun, welche ich installieren soll?
Grüße,
Dirk

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

Beitrag von gms » 25.06.2005 22:24:59

Die Header für deinen Kernel gibt es nicht mehr

Du kannst aber den Kernel upgraden und die passenden Header dazu installieren
z.B.:

Code: Alles auswählen

gms@gms1:~$ apt-cache search kernel | grep 2.6.8-.-386
kernel-headers-2.6.8-2-386 - Linux kernel headers 2.6.8 on 386
kernel-image-2.6.8-2-386 - Linux kernel image for version 2.6.8 on 386.
Gruß
gms

Benutzeravatar
pdreker
Beiträge: 8298
Registriert: 29.07.2002 21:53:30
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Nürnberg

Beitrag von pdreker » 26.06.2005 03:12:15

Die KDE Pakete sind "kdelibs4-dev"

Patrick
Definitely not a bot...
Jabber: pdreker@debianforum.de

Benutzeravatar
Kaper
Beiträge: 1077
Registriert: 07.03.2005 19:22:07
Lizenz eigener Beiträge: MIT Lizenz

Beitrag von Kaper » 26.06.2005 12:40:20

Die Header für deinen Kernel gibt es nicht mehr
Das erklärt natürlich, warum ich das richtige Paket nicht finden konnte. Gibt es denn die Möglichkeit, den augenblicklich instalierten Kernel zu sichern, damit ich mit dem weiter arbeiten kann, falls beim upgraden etwas schief geht? Und wenn ja, wo finde ich denn eine Anleitung dafür?

Das mit dem KDE-header hat geklappt. Danke!

Benutzeravatar
pdreker
Beiträge: 8298
Registriert: 29.07.2002 21:53:30
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Nürnberg

Beitrag von pdreker » 26.06.2005 13:55:37

Wenn Du Grub als Bootmanager benutzt, kannst Du praktisch belibig viele Kernel "vorrätig" haben, also im Bootmenu... Wenn Du dann noch "make-kpkg" und/oder das Debian Paket System benutzt, werden die Kernel sogar automatisch ins Grub Menu eingetragen...

Patrick
Definitely not a bot...
Jabber: pdreker@debianforum.de

Benutzeravatar
Kaper
Beiträge: 1077
Registriert: 07.03.2005 19:22:07
Lizenz eigener Beiträge: MIT Lizenz

Beitrag von Kaper » 26.06.2005 14:27:06

Das ist schön und sehr beruhigend, dass das geht. Und Grub benutze ich auch. Jetzt müsste ich nur noch wissen, wie das geht.
Im Ronneburg steht, dass man das Verzeichnis /usr/src/linux umbenennen soll, damit die vorhandenen Dateien nicht überschrieben werden. Was muss ich dann noch machen, damit Grub die alte Version in dem umbenannten Verzeichnis noch findet?

Entschuldigt bitte diese Anfängerfragen, aber ich wüsste sonst nicht, wo ich die Infos sonst herbekommen könnte.

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

Beitrag von KBDCALLS » 26.06.2005 14:32:03

Grub hat doch nichts mit den Sourcen zu tun. Der sucht sich doch nur die Installierten Kernels und eine eventuell dazugehörende Intrd zusammen und trägt die in die menu.lst ein. Und wenn du Debianpakete für die Sourcen nimmts werden die auch auseineinandergehalten, so das sich verschiedene Versionen nicht ins Gehege kommen. Wenn du die Sourcen mit einem Debianpaket installierst werden die in

Code: Alles auswählen

 /usr/src/
wo sie dann noch entpackt werden müssen.
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.

Benutzeravatar
Kaper
Beiträge: 1077
Registriert: 07.03.2005 19:22:07
Lizenz eigener Beiträge: MIT Lizenz

Beitrag von Kaper » 26.06.2005 14:40:11

Ich glaube, ich habe mich unklar ausgedrückt. Wenn ich nun das Verzeichnis /usr/src/linux, wie bei Ronneburg beschrieben, in /usr/src/kernel-2.6.8-1-386 umbenenne und in /usr/src/linux eine neuere Kernelversion installiere, bietet mir dann Grub automatisch beide Kernel-Versionen zum Starten an oder muss ich dazu noch irgendwo was eintragen?

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

Beitrag von KBDCALLS » 26.06.2005 15:49:33

Nein jetzt hast du was falsch verstanden Alles was in i

Code: Alles auswählen

/usr/src/
installiert wird, sind die Sourcen. Also nicht die fertigen Kernels. Die landen wenn sie Installiert werden im Verzeichnis

Code: Alles auswählen

/boot
. Und da werden die unterschiedlichen Kernel und die eventuell dazugehörenden Intrds zusammgesucht , von Script

Code: Alles auswählen

update-grub
] und in der Menu.list des Grubs eingetragen. Grob läuft das so ab.

Ich installiere mit

Code: Alles auswählen

apt-get install kernel-source-2.6.8-2
die Sourcen. Dann wechsle ich in das Verzeichnis

Code: Alles auswählen

/usr/src
hier finde ich dann ein Archiv welches ich dann mit tar entpacke

Code: Alles auswählen

 tar xjf kernel-source-2.6.8-2
Jetzt finde ich ein Verzeichnis

Code: Alles auswählen

 kernel-source-2.6.8-2
Hier kann ich jetzt den Kernel nach meinen Wünschen konfigurieren. Nachdem ich das gemacht habe kann ich jetzt den Kernel kompilieren.

Code: Alles auswählen

make-kpkg --initrd --append-to-version=-2-k7 kernel-image
Und erhalte nach einigen Minuten Wartezeit ein Debianpaket , welches ich dann installieren kann.

Code: Alles auswählen

 dpkg -l kernel-image-2.6.8-2-k7 
Der Kernel und die Initrd landen jetzt hier in

Code: Alles auswählen

/boot

und werden vom Script

Code: Alles auswählen

 update-grub

in der

Code: Alles auswählen

menu.lst
des Grubs eingetragen.
Und wenn ich jetzt einen Kernel 2.6.11 aus Debianpaketen installieren würde würden die sich nicht ins Gehege kommen, sondern beide im Menue von Grub erscheinen.
Zuletzt geändert von KBDCALLS am 26.06.2005 16:34:03, insgesamt 1-mal geändert.
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.

Benutzeravatar
Kaper
Beiträge: 1077
Registriert: 07.03.2005 19:22:07
Lizenz eigener Beiträge: MIT Lizenz

Beitrag von Kaper » 26.06.2005 16:01:50

Vielen Dank! Jetzt habe ich es verstanden und werde das die nächsten Tage mal ausprobieren.
Viele Grüße,
Dirk

Antworten