Debian - Eigene Pakete kompilieren

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
Earl003
Beiträge: 14
Registriert: 03.01.2012 10:33:37

Debian - Eigene Pakete kompilieren

Beitrag von Earl003 » 10.01.2012 10:35:03

Hallo Community,

Von Gentoo und Archlinux bin ich noch verwöhnt, eigene .ebuilds beziehungsweise .PKGBUILD zu schreiben.

Allerdings habe ich leider keine Ahnung, wie dies unter Debian abläuft. Mit Google stieß ich leider nur auf ähnliche Threads, die aber nicht mein Problem konkret lösen... :(

Ich würde gerne eigene Pakete kompilieren. Die einfachste Lösung wäre ein sudo make config und sudo make install. Allerdings bekommt der Paketmanager nichts davon mit --> FAIL. :-(

Wie kann ich (zum Beispiel Pidgin/Transmission/Gajim) manuell konfigurieren (Features aktivieren/deaktivieren) und anschließend kompilieren, damit der Paketmanager auch davon etwas mitbekommt? :)

Ich bin mir sicher, dass Ihr Profis die Lösung für mein Problem wisst, und hoffentlich diese auch mit mir teilt!

Liebe Grüße,

Earl

**EDIT**

Ich würde gerne Compiz manuell kompilieren (aus dem GIT), und davon sollte der Paketmanager unbedingt etwas mitbekommen... :)

Benutzeravatar
Soong
Beiträge: 207
Registriert: 09.05.2011 11:05:26
Lizenz eigener Beiträge: GNU Free Documentation License

Re: Debian - Eigene Pakete kompilieren

Beitrag von Soong » 10.01.2012 13:21:15

Ich denke der einfachste Weg wäre checkinstall. Damit erstellst du ein einfaches Debian-Paket, das du dann mit dem Paketmanager installieren kannst.

Das heißt du würdest ganz normal zum Kompilieren die Schritte configure und make ausführen (bei ersterem kannst du Optionen setzen), aber statt der direkten Installation steht dann checkinstall um das Paket zu erstellen. Hab ich noch nicht so oft gemacht, kann dir also beim Kompilieren selbst nicht so viel helfen, aber das dürftest du als Gentoo-Nutzer ja wahrscheinlich draufhaben.
The strength of a civilization is not measured by its ability to fight wars, but rather by its ability to prevent them.
-Gene Roddenberry

Mitglied bei der Free Software Foundation oder der Free Software Foundation Europe werden oder kostenlos die Free Software Foundation Europe unterstützen!

Henrikx

Re: Debian - Eigene Pakete kompilieren

Beitrag von Henrikx » 15.01.2012 19:14:49

Soong hat geschrieben:Ich denke der einfachste Weg wäre checkinstall.
checkinstall nur zur NOT!!!, wenn kein debianisiertes Paket vorliegt..
Earl003 hat geschrieben:Wie kann ich (zum Beispiel Pidgin/Transmission/Gajim) manuell konfigurieren (Features aktivieren/deaktivieren) und anschließend kompilieren, damit der Paketmanager auch davon etwas mitbekommt?
Ausgehend davon, dass du alle nötigen Voraussetzungen zum Erstellen von Debian-Paketen erfüllt hast, ein fertiges (debianisertes) Paket neu kompilieren möchtest und/oder vorher neu konfigurieren möchtest..

Beispiel Pidgin - Version aus wheezy
http://packages.debian.org/wheezy/pidgin
1. Abhängigkeiten auflösen

Code: Alles auswählen

root@debian:~$ apt-get build-dep pidgin
2. dsc - Datei runter laden und "entpacken".

Code: Alles auswählen

dget -u http://ftp.de.debian.org/debian/pool/main/p/pidgin/pidgin_2.10.1-1.dsc
Folgende Dateien befinden sich dann auf deinem Rechner

Code: Alles auswählen

dpkg-source: Information: extrahiere pidgin nach pidgin-2.10.1
dpkg-source: Information: entpacke pidgin_2.10.1.orig.tar.bz2
dpkg-source: Information: entpacke pidgin_2.10.1-1.debian.tar.gz
3. Im Verzeichnis ~pidgin-2.10.1/debian befindet sich u.a die Datei rules.
Dort im Abschnitt :

Code: Alles auswählen

# Build into a separate directory
DEB_BUILDDIR = $(DEB_SRCDIR)/build

LDFLAGS = -Wl,--as-needed
DEB_CONFIGURE_EXTRA_FLAGS = --disable-gevolution \
	    --enable-cap --with-system-ssl-certs=/etc/ssl/certs \
	    --enable-perl --with-zephyr=/usr --enable-dbus --enable-gnutls=no \
	    --enable-nss=yes --enable-cyrus-sasl --enable-vv --enable-farsight \
	    --enable-tcl --enable-tk \
	    --with-dynamic-prpls=bonjour,gg,irc,jabber,msn,myspace,mxit,novell,oscar,sametime,simple,yahoo,zephyr #
musst du deine Optionen editieren, dann abspeichern.

4.

Code: Alles auswählen

cd ~/pidgin-2.10.1
fakeroot debian/rules binary
Pidgin und Pidgin-Data sollten jetzt erstellt worden sein.

Benutzeravatar
Soong
Beiträge: 207
Registriert: 09.05.2011 11:05:26
Lizenz eigener Beiträge: GNU Free Documentation License

Re: Debian - Eigene Pakete kompilieren

Beitrag von Soong » 15.01.2012 20:04:32

Danke für den Hinweis! Wieder was dazugelernt und in dem Fall nicht nur wie es geht, sondern sogar wie es richtig geht.
The strength of a civilization is not measured by its ability to fight wars, but rather by its ability to prevent them.
-Gene Roddenberry

Mitglied bei der Free Software Foundation oder der Free Software Foundation Europe werden oder kostenlos die Free Software Foundation Europe unterstützen!

Antworten