Stevi
Anmeldungsdatum: 7. April 2006
Beiträge: Zähle...
|
Hallo, ich beschäftige mich zum ersten Mal mit dem Thema Paketbau, also entschuldigt meine ggf. sehr laienhafte Frage. Ich möchte das Programm ffgtk bauen und in meinem PPA bereitstellen. Das PPA habe ich bereits erfolgreich aktiviert. Ich habe mir auch schon die empfohlenen Artikel im Wiki durchgelesen. Allerdings verstehe ich den Teil bzgl. der "rules" Datei nicht so ganz (Grundlagen der Paketerstellung (Abschnitt „rules“)). Dementsprechend ist der Paketbau im PPA dann letztlich auch fehlgeschlagen. ffgtk wird installiert mittels
./autogen.sh
./configure
make
sudo make install Wäre vielleicht jemand so nett mir zu sagen, wie ich "rules" entsprechend anpassen kann. Mir ist z.B. nicht klar, wo ich das ./autogen.sh einbauen kann und ob ich den Rest der Datei einfach so stehen lassen kann. Vielen Dank für Eure Hilfe. Stevi.
|
Maduser
Anmeldungsdatum: 3. Mai 2005
Beiträge: 1238
|
Ich würde dir als erstes empfehlen cdbs zu verwenden. Das macht es bei Pakten die sich "normal" bauen lassen sind deutlich leichter. Zum Test-build sei dir der pbuilder empfohlen. Und ohne deine rules oder eine Fehlermeldung wird es schwer zu sagen was verkehrt ist.
|
Stevi
(Themenstarter)
Anmeldungsdatum: 7. April 2006
Beiträge: 483
|
Vielen Dank erstmal. Das ist ja eine Menge Lesestoff, den Du da verlinkt hast. Kann das wirklich einfacher sein, als die von mir geplante Variante? Die rules Datei habe ich nur an zwei Stellen geändert. Zum Einen hab ich ganz oben "export ./autogen.sh" eingetragen, was vermutlich Quatsch war. Daneben hab ich die Clean Zeilen rausgeschmissen, weil diesbezüglich ein Fehler kam. Das buildlog hab ich mal angehängt. Ich erwähne nur sicherheitshalber nochmal, dass ich absoluter Laie bin und das zum allerersten Mal mache.
- tmp5sts3X.buildlog (84.0 KiB)
- Download tmp5sts3X.buildlog
- rules (2.7 KiB)
- Download rules
|
Maduser
Anmeldungsdatum: 3. Mai 2005
Beiträge: 1238
|
Das autogen gehört zu configure. Dann trage doch das bei
# Add here commands to configure the package.
ein. PS: Paketbau ist keine ganz einfache Sache. Da muss man am Anfang viel lesen. Zu CDBS gibt es im Ubuntu Wiki: PackagingGuide/Howtos/CDBS.
|
Stevi
(Themenstarter)
Anmeldungsdatum: 7. April 2006
Beiträge: 483
|
Ich bin jetzt doch mittels cdbs vorgegangen. Danke für den Tipp. Ich habe zwei der drei Pakete, die für ffgtk gebraucht werden, nun erfolgreich gebaut. Letztlich fehlt nur noch das eigentliche ffgtk Paket, da ich nicht weiß, wie ich ./autogen.sh einbauen soll. Ich hab mir die ganze Nacht um die Ohren geschlagen und nach einer Lösung gesucht und experimentiert. Leider ohne Erfolg. Für einen Tipp wäre ich sehr dankbar. edit: Ich hab nach langem Googlen folgendes mit Erfolg probiert:
#!/usr/bin/make -f
include /usr/share/cdbs/1/rules/debhelper.mk
include /usr/share/cdbs/1/class/autotools.mk
DEB_CONFIGURE_PREFIX=/usr
# Remove this, if running autogen.sh is not a valid option
debian/stamp-autotools-files:
./autogen.sh
touch debian/stamp-autotools-files Leider hab ich keine Ahnung, was ich da genau eingegeben habe. Vielleicht kann mir jemand sagen, ob das Mist ist oder ob das ganz okay ist. edit: Wer möchte darf sich gerne die gebauten Pakete ansehen und mir ein paar Hinweise geben: https://launchpad.net/~stevi/+archive/ppa Danke!
|
Stevi
(Themenstarter)
Anmeldungsdatum: 7. April 2006
Beiträge: 483
|
Mmmh, schade. Hätte mich über eine kurze Anmerkung gefreut. Vielleicht kann mir aber jemand sagen, wie man Absätze oder Zeilenumbrüche in die control Datei unter Description einträgt.
|
Maduser
Anmeldungsdatum: 3. Mai 2005
Beiträge: 1238
|
Laut http://www.debian.org/doc/debian-policy/ch-controlfields.html#s-f-Description: Those containing a single space followed by a single full stop character. These are rendered as blank lines. This is the only way to get a blank line.
|
Stevi
(Themenstarter)
Anmeldungsdatum: 7. April 2006
Beiträge: 483
|
|
Stevi
(Themenstarter)
Anmeldungsdatum: 7. April 2006
Beiträge: 483
|
Und schon wieder hat sich eine Frage aufgetan, die sich durch die mir bekannten Seiten nicht lässt. Nachdem die Pakete für Jaunty nun ganz ordentlich funktionieren, wäre es natürlich auch schön welche für Intrepid und Hardy anbieten zu können. Gibt es da eine einfache Methode oder einfaches Kommando, welches man in die Konfigurationsdateien einfügen kann? Oder muss man für jede Ubuntu-Version eigene Konfiguations-Dateien erstellen und ins ppa hochladen?
|
Maduser
Anmeldungsdatum: 3. Mai 2005
Beiträge: 1238
|
Das ppa entscheidet nach der changelog. Dort wird im letzten Eintrag die Distribution angeschaut. Man soll aber auch die Pakete kopieren können. Das habe ich aber noch nie gemacht. Siehe auch launchpad: Packaging/PPA
|
Maduser
Anmeldungsdatum: 3. Mai 2005
Beiträge: 1238
|
Ich habe mal über dein libcapi20 Paket geschaut. Aufgefallen ist mir dabei folgendes:
Du hast ein Build-Depends auf checkinstall. Brauchst du die wirklich? In der copyright Datei steht du hast es von tabos.org, aber auf tabos.org steht es gibt die jetzt unter isdn4linux. lintian wirft einiges an Warnungen:
W: libcapi20 source: package-depends-on-hardcoded-libc libcapi20 depends
W: libcapi20: readme-debian-contains-debmake-template
W: libcapi20: non-dev-pkg-with-shlib-symlink usr/lib/libcapi20.so.3.0.4 usr/lib/libcapi20.so
W: libcapi20: copyright-lists-upstream-authors-with-dh_make-boilerplate
W: libcapi20: extended-description-line-too-long
W: libcapi20: package-name-doesnt-match-sonames libcapi20-3
W: libcapi20: package-relation-with-self replaces: libcapi20 Edit: Hier findet man eigentlich immer ganz gute Hilfe für lintian Warnungen.
|
Stevi
(Themenstarter)
Anmeldungsdatum: 7. April 2006
Beiträge: 483
|
Super, vielen Dank für Deine Hilfe! Die unter dem Link beschriebene Idee mit dem Suffix ist mir bisher nicht gekommen. So wird es sicherlich gehen. Dennoch etwas umständlich, da man immer alles neu ändern muss. Das mit dem Kopieren hab ich gestern schon probiert. Innerhalb des ppa-Archives hat das nicht geklappt (Vermutlich weil der gleiche Name schon vorhanden war). In ein anderes Archiv konnte ich kopieren, allerdings steht dann dort im changelog natürlich trotzdem jaunty. Das ist etwas unglücklich. Maduser schrieb: Ehrlich gesagt keine Ahnung. Ich werd mal den Programmierer des Programmes fragen. Ja, das mit isdn4linux ist neu. Man kann es aber auch noch auf Tabos bekommen. Ich werds aber ändern. W: libcapi20 source: package-depends-on-hardcoded-libc libcapi20 depends
W: libcapi20: readme-debian-contains-debmake-template
W: libcapi20: non-dev-pkg-with-shlib-symlink usr/lib/libcapi20.so.3.0.4 usr/lib/libcapi20.so
W: libcapi20: copyright-lists-upstream-authors-with-dh_make-boilerplate
W: libcapi20: extended-description-line-too-long
W: libcapi20: package-name-doesnt-match-sonames libcapi20-3
W: libcapi20: package-relation-with-self replaces: libcapi20 Edit: Hier findet man eigentlich immer ganz gute Hilfe für lintian Warnungen.
Das sehe ich mir mal an. Vielen Dank für die sehr nützlichen Hinweise! ☺ Gibt es eigentlich einen IRC-channel zu dem Thema, wo ich weitere Fragen schnell mal stellen könnte?
|
Maduser
Anmeldungsdatum: 3. Mai 2005
Beiträge: 1238
|
Stevi schrieb: Vielen Dank für die sehr nützlichen Hinweise! ☺ Gibt es eigentlich einen IRC-channel zu dem Thema, wo ich weitere Fragen schnell mal stellen könnte?
Ja, unter #ubuntu-motu auf irc.freenode.net ist ein IRC-channel.
|
Stevi
(Themenstarter)
Anmeldungsdatum: 7. April 2006
Beiträge: 483
|
|