Provided by: dpkg-dev_1.18.4ubuntu1.7_all bug

BEZEICHNUNG

       dpkg-buildpackage - baue Binär- oder Quellpakete aus Quellen

ÜBERSICHT

       dpkg-buildpackage [Option ?]

BESCHREIBUNG

       dpkg-buildpackage  ist  ein  Programm,  das  den  Prozess  des Bauens eines Debian-Paketes
       automatisiert. Es besteht aus den folgenden Schritten:

       1. Es bereitet die Bauumgebung vor, indem verschiedene Umgebungsvariablen  gesetzt  werden
          (siehe  UMGEBUNG),  führt den init-Hook aus und ruft dpkg-source --before-build auf (es
          sei denn, -T oder --target wurde verwandt).

       2. Es prüft, dass Bauabhängigkeiten und -konflikte erfüllt sind (falls -d nicht  angegeben
          ist).

       3. Falls  ein  spezielles  Ziel  mit der Option -T oder --target ausgewählt wurde, ruft es
          dieses Ziel auf und endet hier. Andernfalls führt es den Hook  preclean  aus  und  ruft
          fakeroot  debian/  rules  clean  auf,  um  den  Bau-Baum zu bereinigen (falls -nc nicht
          angegeben ist).

       4. Es führt den Hook source aus  und  ruft  dpkg-source  -b  auf,  um  das  Quellpaket  zu
          erstellen (falls nicht mit -b, -B oder -A ein rein-binärer Bau erbeten wurde).

       5. Es  führt  den Hook build aus und ruft debian/rules Bauziel auf. Dann führt es den Hook
          binary aus, gefolgt von fakeroot debian/rules Binärziel auf  (falls  nicht  ein  reiner
          Quellbau mit -S erbeten wurde). Beachten Sie, dass Bauziel und Binärziel entweder build
          und binary (Standardfall, oder falls -b angegeben ist) oder build-arch und  binary-arch
          (falls  -B  oder  -G angegeben ist) oder build-indep und binary-indep (falls -A oder -g
          angegeben ist) lauten.

       6. Es führt den Hook changes aus und ruft dpkg-genchanges auf, um eine  .changes-Datei  zu
          erstellen.   Viele   Optionen   von   dpkg-buildpackage   werden   an   dpkg-genchanges
          weitergeleitet.

       7. Es führt den Hook postclean aus und, falls -tc  angegeben  ist,  ruft  erneut  fakeroot
          debian/rules clean auf.

       8. dpkg-source --after-build wird aufgerufen.

       9. Es  führt  den  Hook  check  aus  und ruft einen Paketprüfer für die Datei .changes auf
          (falls ein Befehl in DEB_CHECK_COMMAND oder mit --check-command angegeben ist).

       10.
          Es führt den Hook sign aus und ruft  gpg2  oder  gpg  auf,  um  die  .dsc-Datei  (falls
          vorhanden und -us nicht angegeben wurde oder es sich um einen »UNRELEASED«-Bau handelt)
          und die .changes-Datei (falls vorhanden und -uc nicht angegeben wurde oder es  sich  um
          einen »UNRELEASED«-Bau handelt) zu signieren.

       11.
          Es führt den Hook done aus.

OPTIONEN

       -g     Spezifiziert  einen  auf die Quellen und architekturunabhängige Pakete beschränkten
              Bau (seit Dpkg 1.17.11). Wird an dpkg-genchanges weitergegeben.

       -G     Spezifiziert einen auf die Quellen und architektur-spezifische Pakete  beschränkten
              Bau (seit Dpkg 1.17.11). Wird an dpkg-genchanges weitergegeben.

       -b     Spezifiziert  einen  rein  binären  Bau,  keine Quelldateien sollen gebaut und/oder
              vertrieben (im Sinne von verteilen) werden. Wird an dpkg-genchanges weitergegeben.

       -B     Spezifiziert einen rein binären Bau, beschränkt  auf  architekturabhängige  Pakete.
              Wird an dpkg-genchanges weitergegeben.

       -A     Spezifiziert  einen rein binären Bau, beschränkt auf architekturunabhängige Pakete.
              Wird an dpkg-genchanges weitergegeben.

       -S     Spezifiziert einen reinen Quellbau, es werden keine Binärpakete erstellt.  Wird  an
              dpkg-genchanges  weitergegeben.  Hinweis:  Falls  Sie  einfach das Quellpaket (neu)
              bauen möchten, ist die Verwendung von dpkg-source  immer  besser,  da  dafür  keine
              Bauabhängigkeiten installiert sein müssen, um das Ziel clean aufzurufen.

       -F     Spezifiziert  einen  normalen  kompletten Bau, Binär- und Quellpakete werden gebaut
              (seit Dpkg 1.15.8). Dies ist  identisch  zum  Standardfall,  wenn  keine  Bauoption
              spezifiziert wird.

       --target=Ziel
       --target Ziel
       -TZiel Ruft  debian/rules Ziel auf, nachdem die Bauumgebung eingerichtet wurde und beendet
              den Paketbauprozess hier (seit Dpkg 1.15.0). Falls auch --as-root angegeben  wurde,
              wird  der  Befehl  mit  root-Rechten  ausgeführt  (siehe  -r).  Beachten  Sie, dass
              offizielle  Ziele,  bei  denen  die  Debian-Richtlinien  verlangen,  dass  Sie  mit
              root-Rechten ausgeführt werden, diese Option nicht benötigen.

       --as-root
              Ergibt nur mit --target einen Sinn (seit Dpkg 1.15.0). Erfordert, dass das Ziel mit
              Root-Rechten ausgeführt wird.

       -si
       -sa
       -sd
       -vVersion
       -CÄnderungsbeschreibung
       -mBetreueradresse
       -eBetreueradresse
              Wird unverändert an dpkg-genchanges weitergegeben. Lesen Sie dessen Handbuchseite.

       -a, --host-arch Architektur
              Spezifiziert die Debian-Architektur, für die gebaut wird (lange  Option  seit  Dpkg
              1.17.17).  Die  Architektur  der  Maschine,  auf  der gebaut wird, wird automatisch
              bestimmt,  und  ist  auch  die  Voreinstellung  für  die  Gastgebermaschine  (»host
              machine«).

       -t, --host-type GNU-Systemtyp
              Spezifiziere den GNU-Systemtyp, für den wir bauen (lange Option seit Dpkg 1.17.17).
              Er kann anstelle von  --host-arch  oder  als  Ergänzung  verwandt  werden,  um  den
              Standard GNU-Systemtyp der Host-Debian-Architektur außer Kraft zu setzen.

       --target-arch Architektur
              Spezifiziert  die  Debian-Architektur,  für die die gebauten Programme bauen werden
              (seit Dpkg 1.17.17). Die Voreinstellung ist die Host-Maschine.

       --target-type GNU-Systemtyp
              Spezifiziere den GNU-Systemtyp, für den die gebauten Programme bauen  werden  (seit
              Dpkg  1.17.17).  Er  kann  anstelle  von  --target-arch oder als Ergänzung verwandt
              werden, um den Standard GNU-Systemtyp der Ziel-Debian-Architektur zu überschreiben.

       -PProfil[,?]
              Gibt als Kommata-getrennte Liste die zu bauenden Profile  an  (seit  Dpkg  1.17.2).
              Standardmäßig  wird  für  kein  bestimmtes Profil gebaut. Setzt sie auch (als durch
              Leerzeichen getrennte Liste)  in  die  Umgebungsvariable  DEB_BUILD_PROFILES.  Dies
              erlaubt  beispielsweise  debian/rules-Dateien,  diese Information für den Bau unter
              bestimmten Bedingungen zu nutzen.

       -j[Aufträge|auto]
              Anzahl an Aufträgen, die simultan laufen dürfen,  Anzahl  von  Aufträgen,  die  zur
              Anzahl  der  verfügbaren  Prozessoren  passt,  falls  auto angegeben ist (seit Dpkg
              1.17.10)  oder  eine  unbegrenzte  Anzahl,  falls  Aufträge  nicht  angegeben  ist,
              äquivalent  zu  der  Option  von make(1) mit dem gleichen Namen (seit Dpkg 1.14.7).
              Fügt sich selbst zu der Umgebungsvariablen MAKEFLAGS hinzu, was dazu führen sollte,
              dass  alle  folgenden  Aufrufe  von  Make diese Option erben werden. Damit wird dem
              Paket die Paralle-Einstellung aufgezwungen (und möglicherweise  dem  Bausystem  der
              Originalautoren,  falls  dieses Make verwendet), unabhängig von deren Unterstützung
              für  paralleles  Bauen.  Dies  kann  zu  Fehlern  beim  Bauen  führen.  Fügt   auch
              parallel=Aufträge  oder parallel zu der Umgebungsvariablen DEB_BUILD_OPTIONS hinzu,
              was es  debian/rules-Dateien  erlaubt,  diese  Information  für  eigene  Zwecke  zu
              verwenden.  Der Wert -j setzt die Option parallel=Aufträge oder die Option parallel
              in der Umgebungsvariable DEB_BUILD_OPTIONS außer Kraft. Beachten Sie, dass der Wert
              auto  durch  die tatsächliche Anzahl der derzeitig aktiven Prozessoren ersetzt wird
              und somit nicht an irgendeinen Kindprozess weitergegeben wird. Falls die Anzahl der
              verfügbaren  Prozessoren  nicht  ermittelt  werden  kann,  fällt  der Code auf eine
              unbegrenzte Anzahl zurück.

       -J[Aufträge|auto]
              Diese Option (seit Dpkg 1.18.2) ist äquivalent zu der Option -j,  allerdings  setzt
              sie  die  Umgebungsvariable  MAKEFLAGS  nicht und ist daher sich sicherer mit allen
              Paketen zu benutzen, auch denen, die nicht sicher parallel bauen.

       -D     Prüfe Bauabhängigkeiten und -konflikte; Abbruch falls  diese  nicht  erfüllt  sind.
              Dies ist das Standardverhalten.

       -d     Überprüfe Bauabhängigkeiten und -konflikte nicht.

       --ignore-builtin-builddeps
              Prüft die eingebauten Bauabhängigkeiten und -konflikte nicht (seit Dpkg 1.18.2). Es
              gibt distributionsabhängige spezifische implizite Abhängigkeiten, die normalerweise
              in der Bauumgebung benötigt werden, die sogenannte »Build-Essential«-Paketgruppe.

       -nc    Bereinige  den  Quellbaum  nicht. Impliziert -b, falls ansonsten nichts aus -F, -g,
              -G, -B, -A oder -S gewählt wurde. Impliziert -d mit -S (seit Dpkg 1.18.0).

       -tc    Den Quellbaum säubern (verwendet root-werde-Befehl debian/rules clean) nachdem  das
              Paket gebaut wurde.

       -rroot-werde-Befehl
              Wenn  dpkg-buildpackage einen Teil des Bauprozesses als Root ausführen muss, stellt
              es dem auszführenden Befehl den root-werde-Befehl  voran,  falls  dieser  angegeben
              wurde.  Andernfalls  wird standardmäßig fakeroot verwendet, falls es vorhanden ist.
              Der root-werde-Befehl sollte der Name des Programmes im  PATH  sein  und  wird  als
              Argumente  den  Namen  des  wirklich  auszuführenden  Befehles und dessen Argumente
              erhalten.  root-werde-Befehl  kann  Parameter  enthalten  (die  durch   Leerzeichen
              voneinander getrennt sein müssen), aber keine Shell-Metazeichen. Typischerweise ist
              der root-werde-Befehl fakeroot, sudo, super oder really. su ist nicht geeignet,  da
              es  nur die Shell des Benutzers mit -c aufrufen kann, anstatt Argumente individuell
              zur Ausführung des Programms zu übergeben.

       -Rrules-Datei
              Der Bau eines Debian-Pakets erfolgt gewöhnlich durch Aufruf  von  debian/rules  als
              ein  Befehl  mit mehreren Standardparametern (seit Dpkg 1.14.17). Mit dieser Option
              ist es möglich, einen anderen Programmaufruf zum Bau des Paketes zu  verwenden  (es
              können durch Leerzeichen getrennte Parameter angegeben werden). Alternativ kann die
              Standard-debian/rules-Datei mit einem anderen Make-Programm ausgeführt werden  (zum
              Beispiel   durch   die  Verwendung  von  /usr/local/bin/make  -f  debian/rules  als
              rules-Datei).

       --check-command=Prüfbefehl
              Befehl, der zum Prüfen der  .changes-Datei  selbst  und  sämtlichen  in  der  Datei
              referenzierten  Artefakten  verwandt wird (seit Dpkg 1.17.6). Der Befehl sollte den
              Pfadnamen der .changes als  Argument  erhalten.  Dieser  Befehl  ist  normalerweise
              lintian.

       --check-option=Opt
              Option  Opt  an  den  Prüfbefehl,  der  mit  DEB_CHECK_COMMAND oder --check-command
              spezifiziert wurde, übergeben (seit Dpkg 1.17.6). Kann mehrfach verwandt werden.

       --hook-Hook-Name=Hook-Befehl
              Setzt den angegebenen Shell-Code Hook-Befehl als den Hook  Hook-Name,  der  an  den
              Zeitpunkten  läuft,  die  in den Ablaufschritten angegeben sind (seit Dpkg 1.17.6).
              Die  Hooks  werden  immer  ausgeführt,  selbst  falls  die  folgende  Aktion  nicht
              durchgeführt wird (außer beim Hook binary).

              Hinweis:  Hooks  können den Bauprozess beeinflussen und zu Baufehlern führen, falls
              ihre Befehle fehlschlagen. Passen Sie daher auf ungeplante Konsequenzen auf.

              Die derzeit unterstützten Hook-Namen sind:

              init preclean source build binary changes postclean check sign done

              Der Hook-Befehl unterstützt  die  folgende  Ersetzungsformatzeichenkette,  die  vor
              seiner Ausführung angewandt wird:

              %%     Ein einzelnes %-Zeichen.

              %a     Ein  logischer  Wert  (0  oder  1),  der  darstellt,  ob die folgende Aktion
                     ausgeführt wird oder nicht.

              %p     Der Quellpaketname.

              %v     Die Quellpaket-Version.

              %s     Die Quellpaket-Version (ohne die Epoche).

              %u     Die Original- (Upstream-)Version.

       -psignier-Befehl
              Wenn dpkg-buildpackage GPG zum Signieren einer Quellsteuerdatei (.dsc)  oder  einer
              .changes-Datei  benötigt,  wird es statt gpg oder gpg2 den signier-Befehl ausführen
              (und  dabei  falls  notwendig  den  PATH  durchsuchen).  signier-Befehl  wird  alle
              Argumente  erhalten,  die gpg oder gpg2 erhalten hätte. signier-Befehl sollte keine
              Leerzeichen oder andere Metazeichen der Shell enthalten.

       -kSchlüssel-id
              Geben Sie die Schlüssel-ID zur Signatur von Paketen an.

       -us    Das Quellpaket nicht signieren.

       -uc    Die .changes-Datei nicht signieren.

       --force-sign
              Das  Unterschreiben  der  entstehenden  Dateien  erzwingen  (seit   Dpkg   1.17.0),
              unabhängig von -us oder -uc oder anderen internen Heuristiken.

       -i[RegAus]
       -I[Muster]
       -s[nsAkurKUR]
       -z, -Z Wird unverändert an dpkg-source weitergegeben. Lesen Sie dessen Handbuchseite.

       --source-option=Opt
              Option  Opt  an  dpkg-source weitergeben (seit Dpkg 1.15.6). Kann mehrfach verwandt
              werden.

       --changes-option=Opt
              Option Opt  an  dpkg-genchanges  weitergeben  (seit  Dpkg  1.15.6).  Kann  mehrfach
              verwandt werden.

       --admindir=Verz
       --admindir Verz
              Ändert  den  Ablageort  der  dpkg-Datenbank (seit Dpkg 1.14.0). Der Standardort ist
              /var/lib/dpkg.

       -?, --help
              Zeige den Bedienungshinweis und beende.

       --version
              Gebe die Version aus und beende sich.

UMGEBUNG

       DEB_CHECK_COMMAND
              Falls gesetzt, wird er zum Prüfen der .changes-Datei verwandt (seit  Dpkg  1.17.6).
              Wird durch die Option --check-command außer Kraft gesetzt.

       DEB_SIGN_KEYID
              Falls gesetzt, wird sie zum Signieren der .changes- und .dsc-Dateien verwandt (seit
              Dpkg 1.17.2). Wird durch die Option -k außer Kraft gesetzt.

       DEB_BUILD_OPTIONS
              Falls gesetzt und falls sie nocheck enthält, wird  die  Variable  DEB_CHECK_COMMAND
              ignoriert.

       DEB_BUILD_PROFILES
              Falls  gesetzt,  wird  sie  als  aktive(s)  Bau-Profil(e)  für das zu bauende Paket
              verwandt (seit Dpkg 1.17.2). Es ist eine  durch  Leerzeichen  getrennte  Liste  von
              Profilnamen. Wird durch die Option -P außer Kraft gesetzt.

   Vertrauen auf exportierte Umgebungsvariablen
       Selbst falls dpkg-buildpackage einige Variablen exportiert, sollte debian/rules sich nicht
       auf  ihre  Gegenwart  verlassen,  sondern  stattdessen  die  entsprechende   Schnittstelle
       verwenden, um die benötigten Werte abzufragen.

   Von dpkg-architecture gesetzte Variablen
       Beim  Aufruf  von dpkg-architecture werden die Parameter von -a und -t durchgereicht. Jede
       Variable, die von seiner Option -s ausgegeben wird, wird in die Bauumgebung integriert.

BEMERKUNGEN

   Kompilierschalter werden nicht mehr exportiert
       Zwischen Dpkg 1.14.17 and 1.16.1 exportierte dpkg-buildpackage Kompilierschalter  (CFLAGS,
       CXXFLAGS,  FFLAGS,  CPPFLAGS  und  LDFLAGS)  mit Werten, die von dpkg-buildflags geliefert
       wurden. Dies ist nicht mehr der Fall.

   Standard Bauziele
       dpkg-buildpackage verwendet seit Dpkg 1.16.2 die Ziele build-arch und  build-indep.  Diese
       Ziele  sind  daher verpflichtend. Um aber Baufehler bei existierenden Paketen zu vermeiden
       und um den Übergang zu erleichtern, wird es auf das Ziel build zurückfallen, falls make -f
       debian/rules -qn Bauziel den Rückgabewert 2 liefert.

FEHLER

       Es  sollte  möglich  sein,  Leerzeichen und Metazeichen der Shell und Anfangsargumente für
       root-werde-Befehl und signier-Befehl anzugeben.

ÜBERSETZUNG

       Die   deutsche    Übersetzung    wurde    2004,    2006-2015    von    Helge    Kreutzmann
       <debian@helgefjell.de>,  2007  von  Florian  Rehnisch  <eixman@gmx.de>  und  2008 von Sven
       Joachim <svenjoac@gmx.de> angefertigt. Diese Übersetzung ist  Freie  Dokumentation;  lesen
       Sie die GNU General Public License Version 2 oder neuer für die Kopierbedingungen. Es gibt
       KEINE HAFTUNG.

SIEHE AUCH

       dpkg-source(1), dpkg-architecture(1), dpkg-buildflags(1), dpkg-genchanges(1), fakeroot(1),
       lintian(1), gpg2(1), gpg(1).