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

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: