dwww Home | Manual pages | Find package

dpkg-architecture(1)              dpkg suite              dpkg-architecture(1)

BEZEICHNUNG
       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 due Variable DEB_BUILD_ARCH (falls
       diese gesetzt und --force nicht angegeben ist) oder durch einen
       externen Aufruf an dpkg(1) bestimmt und kann nicht auf der Befehlszeile
       gesetzt werden.

       Sie können die Host-Architektur (Wirt-Architektur) spezifizieren, indem
       Sie eine oder beide der Optionen --host-arch oder --host-type verwenden
       (andernfalls wird die Variable DEB_HOST_ARCH verwandt, falls sie
       gesetzt und --force nicht angegeben ist). 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 --host-arch oder --host-type 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, --list
           Zeigt die Umgebungsvariablen, eine pro Zeile, in dem Format
           VARIABLE=Wert. Dies ist die Standardaktion.

       -e, --equal Architektur
           Überprüft auf Gleichheit der Architekturen (seit Dpkg 1.13.13). Es
           prüft die aktuelle oder angegebene Debian-Host-Architektur mit
           Architektur auf Gleichheit. 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.

       -i, --is Architektur-Platzhalter
           Überprüft auf Gleichheit der Architekturen (seit Dpkg 1.13.13). Es
           prüft die aktuelle oder angegebene Debian-Host-Architektur mit
           Architektur-Platzhalter, nachdem dieser zu einem Architektur-
           Platzhalter expandiert wurde und prüft, ob sie passen. Der Befehl
           beendet sich mit einem Exit-Status von 0, falls eine
           Übereinstimmung besteht, andernfalls mit 1.

       -q, --query Variablenname
           Zeigt den Wert einer einzelnen Variablen an.

       -s, --print-set
           Zeigt einen Export-Befehl. Dies kann dazu verwendet werden, um
           Umgebungsvariablen mittels der POSIX-Shell oder make eval zu
           setzen, abhängig vom Ausgabeformat.

       -u, --print-unset
           Gibt ähnlich wie --print-set einen Export-Befehl aus, der alle
           Variablen löscht.

       -c, --command Befehlszeichenkette
           Führt eine Befehlszeichenkette in einer Umgebung aus, in der alle
           Variablen auf die festgelegten Werte gesetzt sind.

       -L, --list-known
           Gibt eine Liste von gültigen Architekturnamen aus. Möglicherweise
           durch eine oder mehrere der Abgleich-Optionen --match-wildcard,
           --match-bits oder --match-endian eingeschränkt (seit Dpkg 1.17.14).

       -?, --help
           Zeigt einen Hinweis zum Aufruf und beendet das Programm.

       --version
           Gibt die Version aus und beendet das Programm.

OPTIONEN
       -a, --host-arch Architektur
           Setzt die Debian-Host-Architektur.

       -t, --host-type GNU-Systemtyp
           Setzt den Host-GNU-Systemtyp.

       -A, --target-arch Architektur
           Setzt die Ziel-Debian-Architektur (seit Dpkg 1.17.14).

       -T, --target-type GNU-Systemtyp
           Setzt den Ziel-GNU-Systemtyp (seit Dpkg 1.17.14).

       -W, --match-wildcard Architektur-Platzhalter
           Begrenzt die mit --list-known aufgeführten Architekturen auf
           solche, die auf den angegebenen Architektur-Platzhalter passen
           (seit Dpkg 1.17.14).

       -B, --match-bits Architektur-Bits
           Begrenzt die mit --list-known aufgeführten Architekturen auf solche
           mit den angegebenen CPU-Bits (seit Dpkg 1.17.14). Entweder 32 oder
           64.

       -E, --match-endian Architektur-Bytereihenfolge
           Begrenzt die mit --list-known aufgeführten Architekturen auf solche
           mit der angegebenen Bytereihenfolge (seit Dpkg 1.17.14). Entweder
           little oder big.

       --print-format Format
           Setzt das Ausgabeformat für --print-set und --print-unset (seit
           Dpkg 1.20.6), auf entweder shell (Vorgabe) oder make.

       -f, --force
           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.

       Ziel-Maschine
           Die Maschine, für die der Compiler baut oder dem Emulator, für den
           Code ausgeführt wird. Dies wird nur beim Bau einer Cross-Toolchain
           (oder einem Emulator) und zum Bau von Code für die Ziel-Architektur
           benötigt. Die Cross-Toolchain wird auf der Bauarchitektur gebaut
           (oder emuliert ausgeführt) und läuft dann auf der Host-Architektur.

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

       Debian-Architekturtupel
           Ein Debian-Architekturtupel ist eine vollqualifizierte Architektur
           mit allen Komponenten ausgeschrieben. Dies unterscheidet sich von
           der Debian-Architektur zumindest in der Weise, dass das ABI nicht
           eingebettet ist. Das aktuelle Tupel hat die Form ABI-Libc-OS-CPU.
           Beispiele: base-gnu-linux-amd64, eabihf-musl-linux-arm.

       Debian-Architektur-Platzhalter
           Ein Debian-Architektur-Platzhalter ist eine spezielle Architektur-
           Zeichenkette, die auf jede reale Architektur, die ein Teil davon
           ist, passt. Die allgemeine Form ist ein Debian-Architektur-Tupel
           mit vier oder weniger Elementen und bei dem mindestens eines any
           ist. Fehlende Elemente des Tupels werden implizit als any
           vorangestellt und daher sind die folgenden Tupel äquivalent:

           any-any-any-any = any
           any-any-os-any = os-any
           any-libc-any-any = libc-any-any

           Beispiele: linux-any, any-i386, hurd-any, eabi-any-any-arm, musl-
           any-any.

       GNU-Systemtyp
           Eine Architekturspezifikationszeichenkette besteht aus zwei, durch
           einen Bindestrich getrennten Teilen: CPU und System. Beispiele:
           i586-linux-gnu, sparc-linux-gnu, i686-gnu, x86_64-netbsd.

       Multiarch-Tripel
           Der bereinigte GNU-Systemtyp; wird für Dateipfade verwandt. Dieses
           Tripel ändert sich auch nicht, wenn das zugrundeliegende ISA erhöht
           wird, so dass die daraus resultierenden Pfade dauerhaft stabil
           bleiben. Derzeit ist der einzige Unterschied zum GNU-Sytemtyp, dass
           der CPU-Anteil für i386-basierte Systeme immer „i386“ lautet.
           Beispiele: i386-linux-gnu, x86_64-linux-gnu. Beispielpfade:
           /lib/powerpc64le-linux-gnu/, /usr/lib/i386-kfreebsd-gnu/.

VARIABLEN
       Die folgenden Variablen werden von der Umgebung gelesen (außer --force
       wurde angegeben) und durch dpkg-architecture gesetzt (siehe den
       Abschnitt AUSDRÜCKE für eine Beschreibung des Benennungsschemas):

       DEB_BUILD_ARCH
           Die Debian-Architektur der Baumaschine.

       DEB_BUILD_ARCH_ABI
           Der Debian-ABI-Name der Baumaschine. (Seit Dpkg 1.18.11).

       DEB_BUILD_ARCH_LIBC
           Der Debian-Libc-Name der Baumaschine. (Seit Dpkg 1.18.11).

       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 Bytereihenfolge der Baumaschine (little/big; seit Dpkg 1.15.4).

       DEB_BUILD_GNU_CPU
           Der GNU-CPU-Teil von DEB_BUILD_GNU_TYPE.

       DEB_BUILD_GNU_SYSTEM
           Der GNU-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, der für
           Dateisystempfade benutzt wird.

       DEB_HOST_ARCH
           Die Debian-Architektur der Host-Maschine.

       DEB_HOST_ARCH_ABI
           Der Debian-ABI-Name der Host-Maschine. (Seit Dpkg 1.18.11).

       DEB_HOST_ARCH_LIBC
           Der Debian-Libc-Name der Host-Maschine. (Seit Dpkg 1.18.11).

       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 Bytereihenfolge der Host-Maschine (little/big; seit Dpkg
           1.15.4).

       DEB_HOST_GNU_CPU
           Der GNU-CPU-Teil von DEB_HOST_GNU_TYPE.

       DEB_HOST_GNU_SYSTEM
           Der GNU-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).

       DEB_TARGET_ARCH
           Die Debian-Architektur der Ziel-Maschine (seit Dpkg 1.17.14).

       DEB_TARGET_ARCH_ABI
           Der Debian-ABI-Name der Ziel-Maschine. (Seit Dpkg 1.18.11).

       DEB_TARGET_ARCH_LIBC
           Der Debian-Libc-Name der Ziel-Maschine. (Seit Dpkg 1.18.11).

       DEB_TARGET_ARCH_OS
           Der Debian-Systemname der Ziel-Maschine. (Seit Dpkg 1.17.14).

       DEB_TARGET_ARCH_CPU
           Der Debian-CPU-Name der Ziel-Maschine. (Seit Dpkg 1.17.14).

       DEB_TARGET_ARCH_BITS
           Die Zeigergröße der Ziel-Maschine in Bits. (Seit Dpkg 1.17.14).

       DEB_TARGET_ARCH_ENDIAN
           Die Bytereihenfolge der Ziel-Maschine (little/big; seit Dpkg
           1.17.14).

       DEB_TARGET_GNU_CPU
           Der GNU-CPU-Teil von DEB_TARGET_GNU_TYPE. (Seit Dpkg 1.17.14).

       DEB_TARGET_GNU_SYSTEM
           Der GNU-System-Teil von DEB_TARGET_GNU_TYPE. (Seit Dpkg 1.17.14).

       DEB_TARGET_GNU_TYPE
           Der GNU-Systemtyp der Ziel-Maschine. (Seit Dpkg 1.17.14).

       DEB_TARGET_MULTIARCH
           Der klargestellte GNU-Systemtyp der Ziel-Maschine, wird für
           Dateisystempfade benutzt. (Seit Dpkg 1.17.14).

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. Diese Tabellen enthalten in der
       ersten Zeile ein Format-Versions-Pseudofeld, um ihre Version zu
       kennzeichnen, so dass Auswerteprogramme prüfen können, ob sie es
       verstehen. Beispiel: „# Version=1.0“.

       /usr/share/dpkg/cputable
           Tabelle der bekannten CPU-Namen und Abbildungen auf ihre GNU-Namen.
           Formatversion 1.0 (seit Dpkg 1.13.2).

       /usr/share/dpkg/ostable
           Tabelle der bekannten Betriebssystemnamen und Abbildungen auf ihre
           GNU-Namen. Formatversion 2.0 (seit Dpkg 1.18.11).

       /usr/share/dpkg/tupletable
           Abbildung zwischen den Debian-Architektur-Tupeln und den Debian-
           Architekturnamen. Formatversion 1.0 (seit Dpkg 1.18.11).

       /usr/share/dpkg/abitable
           Tabelle von Debian-Architektur-ABI-Attributs-Hinwegsetzung.
           Formatversion 2.0 (seit Dpkg 1.18.11).

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

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

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

        eval $(dpkg-architecture -u)

       Überprüfen, ob die aktuelle oder angegebene Host-Architektur identisch
       zu einer Architektur ist:

        dpkg-architecture -elinux-alpha

        dpkg-architecture -amips -elinux-mips

       Überprüfen, ob die aktuelle oder angegebene Host-Architektur ein Linux-
       System ist:

        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 mittels dpkg-architecture mit
       der Option -q 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 Variablen DEB_HOST_ARCH_CPU oder DEB_HOST_ARCH_OS.

       Um alle Variablen, die dpkg-architecture bereitstellen kann, korrekt zu
       setzen, können Sie auch extern ein Make-Steuerdateischnipsel verwenden:

        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.

UMGEBUNG
       DPKG_DATADIR
           Falls dies gesetzt ist, wird es als Datenverzeichnis von dpkg
           verwandt, in dem sich die Architekturtabellen befinden (seit Dpkg
           1.14.17). Standardmäßig „/usr/share/dpkg“.

       DPKG_COLORS
           Setzt den Farbmodus (seit Dpkg 1.18.5). Die derzeit unterstützten
           Werte sind: auto (Vorgabe), always und never.

       DPKG_NLS
           Falls dies gesetzt ist, wird es zur Entscheidung, ob Native
           Language Support, auch als Unterstützung für Internationalisierung
           (oder i18n) bekannt, aktiviert wird (seit Dpkg 1.19.0). Die
           akzeptierten Werte sind: 0 und 1 (Vorgabe).

BEMERKUNGEN
       Alle langen Befehle und Optionennamen sind seit Dpkg 1.17.17 verfügbar.

SIEHE AUCH
       dpkg-buildpackage(1).

ÜBERSETZUNG
       Die deutsche Übersetzung wurde 2004, 2006-2023 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.

1.21.22                           2023-05-11              dpkg-architecture(1)

Generated by dwww version 1.15 on Sat Jun 29 01:50:15 CEST 2024.