Kernel 2.4.20-bf2.4 und NVIDIA, Alsa

Du kommst mit der Installation nicht voran oder willst noch was nachfragen? Schau auch in den "Tipps und Tricks"-Bereich.
Antworten
Moppedboy
Beiträge: 59
Registriert: 09.07.2003 20:03:27

Kernel 2.4.20-bf2.4 und NVIDIA, Alsa

Beitrag von Moppedboy » 15.07.2003 16:11:40

Hallo zusammen,

könnt ihr mich mal beraten, wie ich jetzt weitermachen soll:

Ich will von SuSE auf Debian umsteigen und hab nach mehreren erfolglosen Versuchen mit verschiedenen Distries jetzt mit der Debian-CD vom Linux-Tag ein Woody (3.01) installiert.

Aber bei Alsa und NVIDIA stolpere ich über den Kernel 2.4.20-bf2.4, weil man ja Kernel-Headers und Sourcen braucht und bisher hab ich nur die Headers gefunden (angeblich reichen die, aber allein damit hab ich's nicht hingekriegt).

Ich hab probehalber schon mal den NVIDIA Treiber direkt kompiliert und mittels /etc/modules geladen, das würde auch funktionieren, aber es ist ja nicht "the Debian Way".

Leider hab ich kernelmäßig recht wenig Ahnung, hab mal in einigen How-tos herumgelesen. Aber bevor ich mir in meiner Unwissenheit noch Ärger einhandle wollt ich hier mal fragen, wie ich jetzt am besten vorgehe.

- Kann ich mir einfach ein Kernel-Image zu dem's Quellen und Headers gibt installieren (2.4.21?) und das vorhandene einfach so ersetzen?

- Kann ich einfach die Standard-2.4.20 Headers und Sourcen nehmen (falls ich welche finde), vielleicht ist der Unterschied ja nicht so groß (Sorry, falls sich das blöd anhört, ich hab vom Kernel echt so gut wie keine Ahnung)?

- Weiß jemand noch 'nen anderen Weg, wie ich Alsa und NVIDIA zum Laufen kriege (Alsa müsste übrigens gar nicht sein, von mir aus auch OSS, ist mir im Moment erst mal egal, Hauptsache ich krieg die Installation jetzt erst mal irgendwie hin)?

- Und wenn ich doch 'nen Kernel selber backen muss, weiß jemand eine leicht lesbare deutsche Anleitung, (bin schon ganz wundgelesen :-)) oder kann mir gar beistehen?

Danke schonmal!

Hardware: AMD Duron 700, Asus A7V8X mit VIA Soundchip, RIVA TNT2 68 (oder wie die heißt)

Cheerz Lars

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

Beitrag von pdreker » 15.07.2003 17:27:26

Erstmal was zum Lesen: http://www.openoffice.de/linux/buch/kernelbauen.html
(ohne das kernelbauen.html hintendran kommst Du zum Inhaltsverzeichnis...)

Ja, die sog. "Vanilla" Sources (Vanilla = stinknormal) des 2.4.20 Kernel sollten reichen. Du kannst einfach die passenden Sources von ftp.de.kernel.org/pub/linux/kernel/v2.4/linux-2.4.20.tar.bz2 nehmen. Evtl. kannst Du auch gleich den 2.4.21 nehmen, ganz nach Gusto.

Diese Sourcen entpackst Du dann unter /usr/src, wobei ein Verzeichnis linux-2.4.20 entsteht. Dann machst Du mit "ln -s linux-2.4.20 linux" einen symbolischen Link von dem neuen Verzeichnis auf das Verzeichnis linux.

Ab dieser Stelle kannst Du wie in dem Link oben beschrieben einen Kernel kompilieren (Die Config Deines laufenden Kernel findest Du unter /boot/config-KERNELVERSION finden. kopiere diese Datei einfach nach /usr/src/linux/.config und lass einmal "make oldconfig" laufen, so hast Du dann die gleichen Einstellungen wie der bf24 Kernel).

Grab' dich da 'mal durch. Wenn dann noch Probleme auftauchen, melde Dich nochmal.

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

Indy500
Beiträge: 380
Registriert: 18.04.2003 05:03:40

Beitrag von Indy500 » 15.07.2003 17:31:09

Hi
Einen "Debian Way" für den Nvidia Treiver gibt es nicht. Das Modul wird mit deren Installer erzeugt. Warum muss immer alles Debian-like sein? Ich bevorzuge bei der Kernelinstallation den manuellen Weg.

Kernelsource von http://www.kernel.org holen und in /usr/src entpacken. Einen Link "linux" auf das entstandene Verzeichnis "linux-2.4.x" machen nach "linux" wechseln und "make menuconfig" aufrufen. Dann die Optionen von Oben nach Unten durchgehen und so alles auf deinen Rechner anpassen.
Im Hauptmakefile noch das # vor "export INSTALL_PATH=/boot" wegmachen und dann einfach make dep clean bzImage modules modules_install bzlilo eingeben. Entweder alles in einer Zeile oder jede Option nacheinander.

Vorher solltest du noch deine lilo.conf anpassen.

Also ist genauso easy: Alsa-driver saugen, entpacken, ./configure [optionen].
Mit ./configure --help kannst du dir die Optionen anzeigen lassen. nur die letzten sind für dich interessant, pnp=ja/nein, sequencer=ja/nein, oss-emulation=ja/nein usw. und als letztes noch deine soundkarte angeben.

Bei mir sieht das so aus: ./configure --with-isapnp=no --with-sequencer=no --with-oss=yes --with-cards=emu10k1

Moppedboy
Beiträge: 59
Registriert: 09.07.2003 20:03:27

Beitrag von Moppedboy » 16.07.2003 21:46:14

@pdreker

Danke, hat weitgehend geklappt. Nur heißt der neue Kernel jetzt einfach nur /vmlinuz,
obwohl in /usr/src/linux-2.4.20/Makefile folgendes steht:

Code: Alles auswählen

VERSION = 2
PATCHLEVEL = 4
SUBLEVEL = 20
EXTRAVERSION =

KERNELRELEASE=$(VERSION).$(PATCHLEVEL).$(SUBLEVEL)$(EXTRAVERSION)
Nvidia konnteihc installieren aber alsa-base bemängelt ein fehlendes Kernelimage 2.4.20. Kann ich den vmlimuz einfach umbenennen?

@indy500
Warum muss immer alles Debian-like sein?
Weil ich Debian noch nicht so gut kenne. Wenn ich in 13 bis 38 Jahren mal routinert damit umgehe, trau ich mir auch Sperenzchen zu. Aber im Moment will ich erstmal den empfohlenen Weg gehen. Aber trotzdem danke für deine Tipps.

Cheerz Lars

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

Beitrag von pdreker » 17.07.2003 17:08:30

Du hast den Kernel also mit der "Kernel-Mathode" gebaut, nicht Debian Style. Dann heisst das neue Image immer nur /vmlinuz. Die in /boot/ verlinkten Images werden von dem Debian Style Kernel compile (make-kpkg) erzeugt.

Wenn Du das Image verschiebst (ist das gleiche wie umbenennen) gibt es ein paar Dinge zu beachten:
1) Immer LILO hinterher einmal laufen lassen, sonst funktioniert der Reboot nicht.
2) vorher musst Du evtl. die /etc/lilo.conf anpassen, um dort den geänderten Namen des Kernel-Image anzugeben.

So sollte es eigentlich gehen.

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

Moppedboy
Beiträge: 59
Registriert: 09.07.2003 20:03:27

Beitrag von Moppedboy » 17.07.2003 21:01:01

Du hast den Kernel also mit der "Kernel-Mathode" gebaut, nicht Debian Style.
?!? Ich hab's doch gemacht, wie auf http://www.openoffice.de/linux/buch/kernelbauen.html
beschrieben. Was hab ich denn jetzt gemacht, dass es nicht Debian Style ist?

Cheerz Lars

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

Beitrag von pdreker » 17.07.2003 21:10:29

make-kpkg mit folgendem dpkg -i kernel_image-....deb legt aber normalerweise den Kernel in /boot ab (als vmlinuz-KERNELVERSION) und legt einen Link nach /vmlinuz an.

Ist Dein /vmlinuz vielleicht einfach nur ein Link? (ls -l gibt Auskunft...) Dieser Link vereinfach ein paar Dinge für eine automatische LILO Konfiguration...

Also wenn Du make-kpkg und dpkg benutzt hast, um den Kernel zu kompoilieren und installieren, dann war das schon alles "Debian-Style". Das File im root Directory (/vmlinuz) hat mich etwas verwirrt...

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

Moppedboy
Beiträge: 59
Registriert: 09.07.2003 20:03:27

Beitrag von Moppedboy » 17.07.2003 21:21:31

Ist Dein /vmlinuz vielleicht einfach nur ein Link? (ls -l gibt Auskunft...) Dieser Link vereinfach ein paar Dinge für eine automatische LILO Konfiguration...
Nee, nee, is kein Link, ist der linuz.
Also wenn Du make-kpkg und dpkg benutzt hast, um den Kernel zu kompoilieren und installieren, dann war das schon alles "Debian-Style".
Jetzt dämmert's mir: Von make-kpkg und dpkg steht nix auf der von dir angegebenen Seite, oder ich bin blind... Ich bin die Seite einfach durchgegangen und da kommt nach der Beschreibun, wie man die Sourcen entpackt, dann 'ne Beschreibung, wie's weitergeht. Und das ist dann scheint's die andere Methode.

Wie find ich denn jetzt den Debiab Style raus?

Cheerz Lars

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

Beitrag von pdreker » 17.07.2003 21:31:23

Ach, von *der* Seite hast Du das gemacht ;-)

OK, es gibt in der Tipps Datenbank 2 Anleitungen... Schau Dir 'mal diese an: http://www.debianforum.de/wiki/?page=Ke ... stem+bauen

Das ist der sog. Debian-Style Kernel Build, weil dabei ein Debian Paket erzeugt wird, das man danach mit dpkg installieren kann... Vorteil: Man kann mehrere Kernel-Images gleichzeitig drauf haben, der BootManager wird automatisch angepasst, wenn man eins installiert oder entfernt, und man kann Kernel-Images sauber wieder entfernen...

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

Moppedboy
Beiträge: 59
Registriert: 09.07.2003 20:03:27

Beitrag von Moppedboy » 18.07.2003 00:06:55

OK, es gibt in der Tipps Datenbank 2 Anleitungen... Schau Dir 'mal diese an: http://www.debianforum.de/wiki/?page=Ke ... stem+bauen
Ok. Läuft auch 'ne ganze Weile durch. Endet aber mit

Code: Alles auswählen

make[3]: Leaving directory `/usr/src/linux-2.4.20/arch/i386/math-emu'
cd /usr/src/linux/debian/tmp-image/lib/modules/2.4.20; \
mkdir -p pcmcia; \
find kernel -path '*/pcmcia/*' -name '*.o' | xargs -i -r ln -sf ../{} pcmcia
if [ -r System.map ]; then /sbin/depmod -ae -F System.map -b /usr/src/linux/debian/tmp-image -r 2.4.20; fi
depmod: *** Unresolved symbols in /usr/src/linux/debian/tmp-image/lib/modules/2.4.20/kernel/drivers/net/wan/comx.o
depmod:         proc_get_inode
make[2]: *** [_modinst_post] Error 1
make[2]: Leaving directory `/usr/src/linux-2.4.20'
make[1]: *** [real_stamp_image] Error 2
make[1]: Leaving directory `/usr/src/linux-2.4.20'
debian:/usr/src/linux# dpkg -i kernel-image-2.4.20_custom.1.0_i386.deb
dpkg: error processing kernel-image-2.4.20_custom.1.0_i386.deb (--install):
 cannot access archive: No such file or directory
Errors were encountered while processing:
 kernel-image-2.4.20_custom.1.0_i386.deb
Außerdem konnte ich ncurses nicht installieren, die ich für make menuconfig brauche (hab dann make xconfig genommen), da gibt's Komplikationen mit den teilweise installierten Alsa-Modulen.

Ich bellte barsch ein

Code: Alles auswählen

apt-get -f install
Resultat:

Code: Alles auswählen

1 packages not fully installed or removed.
Need to get 0B of archives. After unpacking 573kB will be freed.
Do you want to continue? [Y/n]
(Reading database ... 42873 files and directories currently installed.)
Removing alsa-modules-2.4.20 ...
dpkg - warning: while removing alsa-modules-2.4.20, directory `/lib/modules/2.4.20' not empty so not removed.
invoke-rc.d: unknown initscript, /etc/init.d/alsa not found.
dpkg: error processing alsa-modules-2.4.20 (--remove):
 subprocess post-removal script returned error exit status 100
Errors were encountered while processing:
 alsa-modules-2.4.20
E: Sub-process /usr/bin/dpkg returned an error code (1)
Kleinlaut versuchte ich's mit

Code: Alles auswählen

apt-get remove alsa-base
doch die hinterlistige Maschine blieb bei ihrer Aussage von vorher. Wie kriege ich denn jetzt die Einzelteile wieder weg? Und wie erzähle ich's dann noch meinem apt?

Schnauf... Eigemtlich wollte ich doch nur 'nen Soundtreiber installieren ;-)

Cheerz Lars

Moppedboy
Beiträge: 59
Registriert: 09.07.2003 20:03:27

Beitrag von Moppedboy » 20.07.2003 21:14:07

Hab's nach einigem Gefummel hingekriegt!
Nur für die Nachwelt, falls jemand ähnliche Probleme haben sollte:

Die Probleme beim Kernel kompilieren hab ich behoben, indem ich in der Kernelconfig rumgespielt hab (WLAN-Unterstützung deaktiviert).

Und die Alsa-Probleme hab so gelöst:

Code: Alles auswählen

dpkg - warning: while removing alsa-modules-2.4.20, directory `/lib/modules/2.4.20' not empty so not removed
Hab ich ausgetrickst durch temporäres Verschieben des Inhalts von /lib/modules/2.4.20.

Und

Code: Alles auswählen

invoke-rc.d: unknown initscript, /etc/init.d/alsa not found
hab ich mit

Code: Alles auswählen

touch /etc/init.d/alsa
überlistet.

Danach hat sowohl das Kompilieren des Kernels, als auch die Alsa-Installation geklappt.

Cheerz Lars

Antworten