Re: Rekompilieren von Mutt
Am Freitag, den 25.02.2005, 22:54 +0100 schrieb Bertram Scharpf:
> allmählich finde ich schon peilich, daß ich noch immer kein
> einziges Debian-Paket gebaut habe. Deswegen taste ich mich
> mal langsam heran, indem ich mir Quellen ziehe und daraus
> ein eigenes Paket baue.
Debian New Maintainers Guide hast du gelesen? Die englische Version ist
aktueller und ausführlicher als die deutsche.
> Konkret denke ich daran, einen eigenen Patch in Mutt
> einzuspielen. Ich verwende auf Woody die Version
> 1.5.6-20040907+2.backports.org.1, mit 1.3.28-2.2 geht's aber
> auch nicht besser. Leider taucht ein Fehler nach dem anderen
> auf.
>
> Erstmal entpacke ich den Tarball. Ich hoffe, das ist so
> halbwegs richtig:
>
> user@host:~/sandbox$ ls
> mutt-1.5.6
> user@host:~/sandbox$ ls mutt-1.5.6
> debian extra upstream
> user@host:~/sandbox$ tar xfz mutt-1.5.6/upstream/tarballs/mutt-1.5.6i.tar.gz
> user@host:~/sandbox$ cd mutt-1.5.6/
> user@host:~/sandbox/mutt-1.5.6$
> user@host:~/sandbox/mutt-1.5.6$ for p in upstream/patches/* upstream/extra-patches/* debian/patches/* ; do patch -p1 <$p ; done
Ich verstehe nicht ganz, warum du das händisch machst. Dazu ist
eigentlich debian/rules da. Für Patches solltest du dir einmal dpatch
anschauen.
> Dann baue ich:
>
> user@host:~/sandbox/mutt-1.5.6$ ./configure --prefix=$HOME/sandbox/mutt-1.5.6/debian/root
Schau besser in debian/rules nach den configure-Optionen, falls du diese
Schritte wirklich per Hand durchexerzieren willst. Einfacher:
$ fakeroot debian/rules <target>
man debuild
man dpkg-buildpackage
> ...
> user@host:~/sandbox/mutt-1.5.6$ make
>
> Das erste Problem lautet:
>
> Makefile:123: *** Fehlendes Trennzeichen.. Schluss.
>
> Ein Fehler im Makefile? Nun gut, ich behebe ihn. Dann:
>
> mutt_ssl_gnutls.c:19: gnutls/gnutls.h: No such file or directory
Da steht '#include <gnutls/gnutls.h>'?
> Das Paket `gnutls-dev' ist installiert. Die gesuchte Datei
> steht in `/usr/include/gnutls.h'. Warum findet er sie nicht?
Weil /usr/include/gnutls/gnutls.h nicht existiert. Ich vermute, dass du
eigentlich libgnutls11-dev brauchst (oder libgnutls10-dev oder
libgnutls7-dev - keine Ahnung welches, ich setze kein Woody ein).
> Wie hat das dann der Maintainer gemacht?
Das richtige Header-Paket installiert :)
Schau in debian/control und dort in die Zeile 'Build-Depends:'. Die
Datei wird im Guide erklärt.
> Könnt Ihr mir ein paar Hinweise geben? Beim Googeln nach
> z.B. "mutt configure main" kommt erwartungsgemäß nichts
> gescheites heraus.
Debian New Maintainers Guide lesen. Dann mal einen Blick in die .diff.gz
und die Patches in debian/patches/ werfen, um zu verstehen, was gepatcht
wird. Dabei lernt man häufig auch einiges.
BTW: mutt ist sehr groß für das erste eigene Paket. Ich wünsche dir viel
Erfolg.
MfG Daniel
Reply to: