Re: libasound2 1.0.11 Etch fehler DMIX
Stefan Stolz <s.newslists@googlemail.com> schrieb:
> Danke für den Tip. Leider weiß ich tatsächlich nicht wie das mit den debs
> bauen geht da ich ein Suse Umsteiger bin.
> Also bräuchte ich Info: Ich sauge den Quellcode. Woher bekomme ich ihn, wo
> landet er?
> Wie spiele ich dann die Änderungen ein? Einfach die src/pcm/pcm_rate.c
> austauschen gegen die neue?
> Und wie baue ich dann die deb?
>
> Danke für die Hilfe
> Stolzi
>
Nur Mut -- auch als Suse-Umsteiger (bin selber mal von Suse nach Debian
gewechselt - wenn auch schon vor vielen Jahren ... :-) ).
Du findest garantiert in Internet diverse Hinweise zum Rekompilieren ein
DEB-Paketes (meist aber in Englisch). Eine deutschsprachige Quelle wäre z.B.
der folgene Artikel im "Linux Magazin":
http://www.linux-magazin.de/Artikel/ausgabe/2002/11/pakete/pakete.html
oder die deutsche Version des "Debian New Maintainer's Guide":
http://www.debian.org/doc/manuals/maint-guide/index.de.html
Ich skizziere hier mal die Schritte wie ich es probieren würde:
1. APT mit Repositories für DEB-Quellpakete füttern (falls das nicht schon
geschehen ist):
In "/etc/apt/sources.list" muss es für Etch / testing geeignete "deb-src"-Zeile geben.
Sie sieht genauso aus wie die passende "deb"-Zeile -- nur mit "deb-src" anstatt von
"deb".
2. Einen Order zum Paketbauen anlegen -- etwa:
mkdir ~/mydebs
cd ~/mydebs
3. Quellen für betreffende Pakete besorgen und auspacken -- hier für "libasound2":
apt-get source libasound2
Dann werden die Bestandteile des Quellpakets (Originalquellarchiv + Debian-Paket-
Beschreibung *.dsc + sofern kein Original-Debian-Paket: Debian-Patches *diff.gz)
ins Arbeitsverzeichnis geladen, und ein Verzeichnis angelegt, dass so ähnlich das
Original-Quellarchiv heisst - in dem Fall wohl "alsa-lib-<version>". (<version> ist
die aktuelle Version.)
4. Pakete installieren, die man zum Bauen des Paketes braucht:
Als "root" (oder mit "sudo"):
apt-get build-dep libasound2
Die Pakete kann man ruhig wieder deinstallieren wenn man fertig ist. Es gibt auch
Möglichkeiten, extra ein "chroot"-System zum sauberen Paket-Bauen einzurichten.
Wenn Dich das interessiert, schau die mal z.B. "pbuilder" an. M.E. wäre das hier
mit Kanonen auf Spatzen geschossen.
5. Ins Paket-Quellverzeichnis wechseln -- hier also:
cd ~/mydebs/alsa-lib-<version>
6. Optional: Neue Versionsnummer für eigenes DEB-Paket verwenden.
Das macht APT das Leben leichter, ist aber nicht nötig. Wenn Du das willst, musst
Du einen neuen Eintrag in "debian/changelog" erzeugen.
7. Datei suchen, die die Alsa-Leute gepatcht haben, und versuchen, die Änderungen
hier im Debian-Quellverzeichnis nachzuziehen:
Das kann man notfalls von Hand machen. Noch einfacher ist es wenn die
betreffende Datei bei Debian mit der Original-Alsa-Datei übereinstimmt. Dann
kopierst Du einfach die Original-Alsa-Datei an die Stelle im Debian-Verzeichnis.
8. Paket(e) neu erzeugen:
Als "root":
debian/rules binary
kompiliert alle aus der ausgepackten Quelle erzeugten DEBs neu.
Oder, um nicht als "root" zu arbeiten:
"fakeroot" installieren -- also "apt-get install fakeroot" -- und dann:
fakeroot debian/rules binary
9. Wenn alles gut gegangen ist: Neues DEB installieren:
Du findest es im Elternverzeichnis, also in "~/mydebs" -- z.B. als "root":
dpkg -i ../libasound2_<version>_<arch>.deb
Falls es noch irgendwelche Probleme gibt einfach fragen.
Dirk
_______________________________________________________________
SMS schreiben mit WEB.DE FreeMail - einfach, schnell und
kostenguenstig. Jetzt gleich testen! http://f.web.de/?mc=021192
Reply to: