Provided by: dpkg-dev_1.17.5ubuntu5.8_all bug

NAME

       dpkg-architecture - Architektur zum Paketbau setzen und bestimmen

ÜBERSICHT

       dpkg-architecture [Option ?] [Befehl]

BESCHREIBUNG

       dpkg-architecture  stellt  eine Möglichkeit bereit, die Rechner-Architektur für den Paketbau zu bestimmen
       und zu setzen.

       Die Bau-Architektur wird immer über einen externen Aufruf an dpkg(1) bestimmt  und  kann  nicht  auf  der
       Kommandozeile gesetzt werden.

       Sie  können die Host-Architektur (Wirt-Architektur) spezifizieren, indem Sie eine oder beide der Optionen
       -a oder -t verwenden. Der Standardwert wird über einen externen  Aufruf  an  gcc(1)  ermittelt  oder  ist
       identisch mit der Bauarchitektur, falls sowohl CC als auch Gcc nicht verfügbar sind. Einer von -a oder -t
       ist  ausreichend,  der  Wert  des anderen wird auf einen brauchbaren Wert gesetzt. Tatsächlich ist es oft
       besser, nur einen der beiden anzugeben, da dpkg-architecture Sie warnen wird, falls Ihre Wahl  nicht  mit
       dem Standardwert übereinstimmt.

BEFEHLE

       -l     Zeige  die  Umgebungsvariablen,  eine  pro  Zeile,  in  dem  Format  VARIABLE=Wert.  Dies  ist die
              Standardaktion.

       -eDebian-Architektur
              Überprüfe  auf  Gleichheit   der   Architekturen   (seit   Dpkg   1.13.13).   Standardmäßig   wird
              Debian-Architektur  gegen  die  aktuelle  Debian-Architektur  auf  dem  Host geprüft. Diese Aktion
              expandiert nicht die Architektur-Platzhalter  (Wildcards).  Der  Befehl  beendet  sich  mit  einem
              Exit-Status von 0, falls eine Übereinstimmung besteht, andernfalls mit 1.

       -iArchitektur-Platzhalter
              Überprüfe    die    Identität   einer   Architektur,   indem   Architektur-Platzhalter   als   ein
              Architektur-Platzhalter expandiert und mit der aktuellen Debian-Architektur verglichen wird  (seit
              Dpkg  1.13.13).  Der Befehl endet mit einem Exit-Status von 0, falls eine Übereinstimmung gefunden
              wurde, ansonsten mit 1.

       -qVariablenname
              Zeige den Wert einer einzelnen Variablen an.

       -s     Zeige einen Export-Befehl. Dies kann dazu verwendet werden, um Umgebungsvariablen mittels eval  zu
              setzen.

       -u     Ähnlich wie -s, gebe einen Export-Befehl aus, der alle Variablen löscht.

       -c Befehl
              Führe einen Befehl in einer Umgebung aus, in der alle Variablen auf die festgelegten Werte gesetzt
              sind.

       -L     Zeige eine Liste von gültigen Architekturnamen.

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

       --version
              Gebe die Version aus und beende sich.

OPTIONEN

       -aDebian-Architektur
              Setze die Debian-Architektur.

       -tGNU-Systemtyp
              Setze den GNU-Systemtyp.

       -f     Existierende  Umgebungsvariablen  mit  dem  gleichen  Namen  wie vom Skript verwendet werden nicht
              überschrieben  (d.h.  sie  werden   von   dpkg-architecture   verwendet),   es   sei   denn,   die
              »force«-Markierung  ist  gesetzt. Dies erlaubt es dem Benutzer einen Wert zu überschreiben, selbst
              wenn der Aufruf von dpkg-architecture tief in einem anderen Skript versteckt  ist  (beispielsweise
              dpkg-buildpackage(1)).

AUSDRÜCKE

       Baumaschine
           Die Maschine, auf der das Paket gebaut wird.

       Host-Maschine
           Die Maschine, für die das Paket gebaut ist.

       Debian-Architektur
           Die  Debian-Architektur-Zeichenkette,  die  den  binären  Baum im FTP-Archiv spezifiziert. Beispiele:
           i386, sparc, hurd-i386.

       Architektur-Platzhalter
           Ein  Architektur-Platzhalter  ist  eine  spezielle  Architektur-Zeichenkette,  die  auf  jede   reale
           Architektur,  die  ein  Teil  davon  ist,  passt.  Die  allgemeine  Form ist <Kern>-<CPU>. Beispiele:
           linux-any, any-i386, hurd-any.

       GNU-Systemtyp
           Eine Architektur-Spezifikations-Zeichenkette besteht aus zwei,  durch  einen  Bindestrich  getrennten
           Teilen: CPU und System. Beispiele: i386-linux-gnu, sparc-linux-gnu, i386-gnu, x86_64-netbsd.

VARIABLEN

       Die folgenden Variablen werden von dpkg-architecture gesetzt:

       DEB_BUILD_ARCH
           Die Debian-Architektur der Baumaschine.

       DEB_BUILD_ARCH_OS
           Der Debian-Systemname der Baumaschine. (Seit Dpkg 1.13.2).

       DEB_BUILD_ARCH_CPU
           Der Debian-CPU-Name der Baumaschine. (Seit Dpkg 1.13.2).

       DEB_BUILD_ARCH_BITS
           Die Zeigergröße der Baumaschine in Bits. (Seit Dpkg 1.15.4).

       DEB_BUILD_ARCH_ENDIAN
           Die Endianness der Baumaschine (little/big; seit Dpkg 1.15.4).

       DEB_BUILD_GNU_CPU
           Der CPU-Teil von DEB_BUILD_GNU_TYPE.

       DEB_BUILD_GNU_SYSTEM
           Der System-Teil von DEB_BUILD_GNU_TYPE.

       DEB_BUILD_GNU_TYPE
           Der GNU-Systemtyp der Baumaschine.

       DEB_BUILD_MULTIARCH
           Der klargestellte GNU-Systemtyp der Baumaschine, wird für Dateisystempfade benutzt.

       DEB_HOST_ARCH
           Die Debian-Architektur der Host-Maschine.

       DEB_HOST_ARCH_OS
           Der Debian-Systemname der Host-Maschine. (Seit Dpkg 1.13.2).

       DEB_HOST_ARCH_CPU
           Der Debian-CPU-Name der Host-Maschine. (Seit Dpkg 1.13.2).

       DEB_HOST_ARCH_BITS
           Die Zeigergröße der Host-Maschine in Bits. (Seit Dpkg 1.15.4).

       DEB_HOST_ARCH_ENDIAN
           Die Endianness der Host-Maschine (little/big; seit Dpkg 1.15.4).

       DEB_HOST_GNU_CPU
           Der CPU-Teil von DEB_HOST_GNU_TYPE.

       DEB_HOST_GNU_SYSTEM
           Der System-Teil von DEB_HOST_GNU_TYPE.

       DEB_HOST_GNU_TYPE
           Der GNU-Systemtyp der Host-Maschine.

       DEB_HOST_MULTIARCH
           Der  klargestellte  GNU-Systemtyp  der  Host-Maschine,  wird für Dateisystempfade benutzt. (Seit Dpkg
           1.16.0).

DATEIEN

   Architekturtabellen
       Alle diese Dateien müssen vorhanden sein, damit dpkg-architecture funktioniert. Ihr Ort kann zur Laufzeit
       mit der Umgebungsvariable DPKG_DATADIR überschrieben werden.

       /usr/share/dpkg/cputable
              Tabelle der bekannten CPU-Namen und Abbildungen auf ihre GNU-Namen.

       /usr/share/dpkg/ostable
              Tabelle der bekannten Betriebssystemnamen und Abbildungen auf ihre GNU-Namen.

       /usr/share/dpkg/triplettable
              Abbildung zwischen den Debian-Architektur-Tripletts und den Debian-Architekturnamen.

   Paketierungsunterstützung
       /usr/share/dpkg/architecture.mk
              Makefile-Schnipsel,  das  alle  Variablen,  die  dpkg-architecture  ausgibt,  korrekt  setzt   und
              exportiert (seit Dpkg 1.16.1).

BEISPIELE

       dpkg-buildpackage akzeptiert die -a-Option und gibt dies an dpkg-architecture weiter. Weitere Beispiele:

              CC=i386-gnu-gcc dpkg-architecture -c debian/rules build

              eval `dpkg-architecture -u`

       Überprüfe, ob eine Architektur identisch zu der aktuellen Architektur oder einer übergebenen ist:

              dpkg-architecture -elinux-alpha

              dpkg-architecture -amips -elinux-mips

       Überprüfe, ob die aktuelle oder eine mit -a übergebene Architektur Linux-Systeme sind:

              dpkg-architecture -ilinux-any

              dpkg-architecture -ai386 -ilinux-any

   Verwendung in debian/rules
       Die   Umgebungsvariablen,   die   von  dpkg-architecture  gesetzt  werden,  werden  an  debian/rules  als
       Make-Variablen weitergegeben (lesen Sie hierzu die Make-Dokumentation). Allerdings sollten Sie sich nicht
       auf diese verlassen, da damit der manuelle Aufruf des Skripts verhindert wird.  Stattdessen  sollten  Sie
       sie  immer  mit  dpkg-architecture mit der -q-Option initialisieren. Hier sind einige Beispiele, die auch
       zeigen, wie sie die Cross-Kompilierungs-Unterstützung in Ihrem Paket verbessern können:

       Ermitteln des GNU-Systemtyps und dessen Weiterleitung an ./configure:

           DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
           DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
           [...]
           ifeq ($(DEB_BUILD_GNU_TYPE), $(DEB_HOST_GNU_TYPE))
             confflags += --build=$(DEB_HOST_GNU_TYPE)
           else
             confflags += --build=$(DEB_BUILD_GNU_TYPE) \
                          --host=$(DEB_HOST_GNU_TYPE)
           endif
           [?]
           ./configure $(confflags)

       Etwas nur für eine bestimmte Architektur erledigen:

           DEB_HOST_ARCH ?= $(shell dpkg-architecture -qDEB_HOST_ARCH)

           ifeq ($(DEB_HOST_ARCH),alpha)
             [?]
           endif

       oder, falls Sie nur den CPU- oder OS-Typ überprüfen müssen, verwenden  Sie  die  DEB_HOST_ARCH_CPU-  oder
       DEB_HOST_ARCH_OS-Variablen.

       Beachten Sie, dass Sie sich auch auf ein externes Makefile-Schnipsel abstützen können, um alle Variablen,
       die dpkg-architecture bereitstellen kann, korrekt zu setzen:

           include /usr/share/dpkg/architecture.mk

           ifeq ($(DEB_HOST_ARCH),alpha)
             [?]
           endif

       Auf  jeden  Fall sollten Sie niemals dpkg --print-architecture verwenden, um die Architekturinformationen
       während eines Paketbaus zu erhalten.

ÜBERSETZUNG

       Die deutsche Übersetzung wurde 2004, 2006-2013 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-buildpackage(1), dpkg-cross(1).

Debian-Projekt                                     2013-03-28                               dpkg-architecture(1)