.\" dpkg manual page - dpkg-architecture(1) .\" .\" Copyright © 2005 Marcus Brinkmann .\" Copyright © 2005 Scott James Remnant .\" Copyright © 2006-2015 Guillem Jover .\" Copyright © 2009-2012 Rapha\(:el Hertzog .\" .\" This is free software; you can redistribute it and/or modify .\" it under the terms of the GNU General Public License as published by .\" the Free Software Foundation; either version 2 of the License, or .\" (at your option) any later version. .\" .\" This is distributed in the hope that it will be useful, .\" but WITHOUT ANY WARRANTY; without even the implied warranty of .\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the .\" GNU General Public License for more details. .\" .\" You should have received a copy of the GNU General Public License .\" along with this program. If not, see . . .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH dpkg\-architecture 1 2019-06-03 1.19.7 "suite dpkg" .nh .SH NOM dpkg\-architecture \- Fixer et d\('eterminer l'architecture pour la construction d'un paquet . .SH SYNOPSIS \fBdpkg\-architecture\fP [\fIoption\fP...] [\fIcommande\fP] .PP . .SH DESCRIPTION \fBdpkg\-architecture\fP aide \(`a d\('eterminer et \(`a fixer l'architecture de construction et l'architecture h\(^ote pour la cr\('eation d'un paquet. .PP L'architecture de construction est toujours d\('etermin\('ee par un appel externe \(`a \fBdpkg\fP(1). Elle ne peut pas \(^etre sp\('ecifi\('ee en ligne de commande. .PP Vous pouvez sp\('ecifier une architecture h\(^ote en utilisant une des options \fB\-\-host\-arch\fP et \fB\-\-host\-type\fP (ou les deux). Par d\('efaut, la valeur est d\('etermin\('ee par un appel \(`a \fBgcc\fP(1), ou en utilisant l'architecture de construction si \fBCC\fP ou gcc ne sont pas disponibles. Utiliser une seule des options \fB\-\-host\-arch\fP et \fB\-\-host\-type\fP est suffisant, la valeur de l'une est utilis\('ee comme valeur par d\('efaut de l'autre. Bien s\(^ur, il est pr\('ef\('erable de n'en pr\('eciser qu'une seule, puisque \fBdpkg\-architecture\fP affichera un avertissement si le choix ne correspond pas \(`a la valeur par d\('efaut. . .SH COMMANDES .TP \fB\-l\fP, \fB\-\-list\fP Affiche les variables d'environnement, une par ligne, en utilisant le format \fIVARIABLE=valeur\fP. C'est l'action par d\('efaut. .TP \fB\-e\fP, \fB\-\-equal\fP \fIarchitecture\fP V\('erifie l'\('egalit\('e d'architectures (depuis dpkg\ 1.13.13). Cela compare l'architecture Debian en cours (ou celle sp\('ecifi\('ee) \(`a \fIarchitecture\fP afin de v\('erifier leur \('egalit\('e. Cette action ne g\(`ere pas les architectures joker. La commande quitte avec un code de retour de \fB0\fP si l'architecture correspond et de \fB1\fP dans le cas contraire. .TP \fB\-i\fP, \fB\-\-is\fP \fIarchitecture\-joker\fP V\('erifie l'identit\('e des architectures (depuis dpkg\ 1.13.13). Cela compare l'architecture Debian en cours (ou celle sp\('ecifi\('ee) \(`a \fIarchitecture\-joker\fP (apr\(`es expansion de celle\-ci) afin de v\('erifier leur correspondance. La commande quitte avec un code de retour de \fB0\fP si l'architecture correspond et de \fB1\fP dans le cas contraire. .TP \fB\-q\fP, \fB\-\-query\fP \fInom\-de\-variable\fP Affiche la valeur d'une seule variable. .TP \fB\-s\fP, \fB\-\-print\-set\fP Produit une commande, qui peut \(^etre utilis\('ee pour positionner les variables d'environnement avec \(Fo\ eval\ \(Fc. .TP \fB\-u\fP, \fB\-\-print\-unset\fP Affiche une commande similaire \(`a celle produite par \fB\-\-print\-unset\fP, mais pour supprimer toutes les variables. .TP \fB\-c\fP, \fB\-\-command\fP \fIcha\(^ine\-de\-commande\fP Ex\('ecute une \fIcha\(^ine\-de\-commande\fP dans un environnement o\(`u toutes les variables sont positionn\('ees aux valeurs sp\('ecifi\('ees. .TP \fB\-L\fP, \fB\-\-list\-known\fP Affiche une liste des architectures valables. Elle peut \(^etre restreinte par une ou plusieurs des options correspondantes \fB\-\-match\-wildcard\fP, \fB\-\-match\-bits\fP ou \fB\-\-match\-endian\fP (depuis dpkg\ 1.17.14). .TP \fB\-?\fP, \fB\-\-help\fP Affiche un message d'aide puis quitte. .TP \fB\-\-version\fP Affiche le num\('ero de version puis quitte. . .SH OPTIONS .TP \fB\-a\fP, \fB\-\-host\-arch\fP \fIarchitecture\fP D\('efinit l'architecture Debian en cours. .TP \fB\-t\fP, \fB\-\-host\-type\fP \fItype\-de\-syst\(`eme\-gnu\fP D\('efinit le type de syst\(`eme GNU en cours. .TP \fB\-A\fP, \fB\-\-target\-arch\fP \fIarchitecture\fP D\('efinit l'architecture Debian de la cible (depuis dpkg\ 1.17.14). .TP \fB\-T\fP, \fB\-\-target\-type\fP \fItype\-de\-syst\(`eme\-gnu\fP D\('efinit le type de syst\(`eme GNU de la cible (depuis dpkg\ 1.17.14). .TP \fB\-W\fP, \fB\-\-match\-wildcard\fP \fIarchitecture\-joker\fP Restreindre les architectures list\('ees par \fB\-\-list\-known\fP \(`a celles correspondant \(`a l'architecture\-joker (depuis dpkg\ 1.17.14). .TP \fB\-B\fP, \fB\-\-match\-bits\fP \fIbits\-de\-l'architecture\fP Restreindre les architectures list\('ees par \fB\-\-list\-known\fP \(`a celles employant un CPU disposant du nombre de bits indiqu\('es (depuis dpkg\ 1.17.14). Soit \fB32\fP, soit\ \fB64\fP. .TP \fB\-E\fP, \fB\-\-match\-endian\fP \fIboutisme\-d'architecture\fP Restreindre les architectures list\('ees par \fB\-\-list\-known\fP \(`a celles correspondant au boutisme sp\('ecifi\('e (depuis dpkg\ 1.17.14). Soit \fBlittle\fP, soit \fBbig\fP. .TP \fB\-f\fP, \fB\-\-force\fP Les valeurs positionn\('ees par les variables d'environnement ayant le m\(^eme nom que celles utilis\('ees par les scripts sont prises en compte (c'est\-\(`a\-dire utilis\('ees par \fBdpkg\-architecture\fP), sauf si cette option est pr\('esente. Cela permet \(`a un utilisateur de surcharger une valeur m\(^eme lorsque l'appel \(`a \fBdpkg\-architecture\fP est inclus dans un autre script (par exemple \fBdpkg\-buildpackage\fP(1)). . .SH TERMINOLOGIE .IP "Machine de construction" 4 Machine sur laquelle le paquet est construit. .IP "Machine h\(^ote" 4 Machine pour laquelle le paquet est construit. .IP "Machine cible" 4 La machine pour laquelle le compilateur construit. Cela est n\('ecessaire uniquement lors de la construction d'une cha\(^ine d'outils de compilation crois\('ee qui sera construite sur l'architecture de construction, pour \(^etre ex\('ecut\('ee sur l'architecture h\(^ote, afin de construire du code pour l'architecture cible. .IP "Architecture Debian" 4 Cha\(^ine de caract\(`eres de l'architecture Debian qui sp\('ecifie l'emplacement dans l'archive FTP. Par exemple\ : i386, sparc, hurd\-i386. .IP "N\-uplet d'architecture Debian" 4 Un n\-uplet d'architecture Debian est l'architecture pleinement qualifi\('ee avec tous ses composants \('enonc\('es. C'est diff\('erent des architectures Debian en ce que le composant \fIprocesseur\fP n'int\(`egre pas l'\fIABI\fP. Le n\-uplet actuel a la forme \fIABI\fP\-\fIlibc\fP\-\fIos\fP\-\fIprocesseur\fP. Exemples\ : base\-gnu\-linux\-amd64, eabihf\-musl\-linux\-arm. .IP "Architecture Debian joker" 4 Une architecture Debian joker est une architecture sp\('eciale qui correspond \(`a toutes les architectures r\('eelles qui en font partie. Il est en g\('en\('eral de la forme d'un n\-uplet d'architecture Debian avec quatre \('el\('ements ou moins dont au moins l'un deux est \fBany\fP. Les \('el\('ements manquants du n\-uplet sont pr\('efix\('es implicitement par \fBany\fP, et donc les paires suivantes sont \('equivalentes. .nf \fBany\fP\-\fBany\fP\-\fBany\fP\-\fBany\fP = \fBany\fP \fBany\fP\-\fBany\fP\-\fIos\fP\-\fBany\fP = \fIos\fP\-\fBany\fP \fBany\fP\-\fIlibc\fP\-\fBany\fP\-\fBany\fP = \fIlibc\fP\-\fBany\fP\-\fBany\fP .fi Exemples\ : linux\-any, any\-i386, hurd\-any, eabi\-any\-any\-arm, musl\-any\-any. .IP "Type de syst\(`eme GNU" 4 Cha\(^ine de caract\(`eres d\('efinissant l'architecture et constitu\('ee de deux parties s\('epar\('ees par un tiret\ : processeur et syst\(`eme. Par exemple\ : i586\-linux\-gnu, sparc\-linux\-gnu, i386\-gnu, x86_64\-netbsd. .IP "n\-uplet multiarchitecture" 4 Type en clair de syst\(`eme GNU, utilis\('e pour les chemins du syst\(`eme de fichiers. Ce n\-uplet ne change pas m\(^eme quand l'ISA de base est incr\('ement\('ee, de sorte que les chemins r\('esultants sont stables dans la dur\('ee. La seule diff\('erence actuelle avec le type du syst\(`eme GNU est que la partie processeur pour les syst\(`emes bas\('es sur l'i386 est toujours i386. Exemples\ : i386\-linux\-gnu, x86_64\-linux\-gnu. Exemple de chemins\ : /lib/powerpc64le\-linux\-gnu/, /usr/lib/i386\-kfreebsd\-gnu/. . .SH "VARIABLES D'ENVIRONNEMENT" Les variables suivantes sont positionn\('ees par \fBdpkg\-architecture\fP (voir la section \fBTERMS\fP pour une description du sch\('ema de nommage)\ : .IP \fBDEB_BUILD_ARCH\fP 4 Architecture Debian de la machine de construction. .IP \fBDEB_BUILD_ARCH_ABI\fP 4 Nom de l'ABI Debian de la machine de construction (depuis dpkg\ 1.18.11). .IP \fBDEB_BUILD_ARCH_LIBC\fP 4 Nom de la libc Debian de la machine de construction (depuis dpkg\ 1.18.11). .IP \fBDEB_BUILD_ARCH_OS\fP 4 Nom du syst\(`eme Debian de la machine de construction (depuis dpkg\ 1.13.2). .IP \fBDEB_BUILD_ARCH_CPU\fP 4 Nom de processeur Debian de la machine de construction (depuis dpkg\ 1.13.2). .IP \fBDEB_BUILD_ARCH_BITS\fP 4 Taille de pointeur de la machine de construction (en bits, depuis dpkg\ 1.15.4). .IP \fBDEB_BUILD_ARCH_ENDIAN\fP 4 Boutisme de la machine de construction (petit ou gros, depuis dpkg\ 1.15.4). .IP \fBDEB_BUILD_GNU_CPU\fP 4 Partie CPU de \fBDEB_BUILD_GNU_TYPE\fP. .IP \fBDEB_BUILD_GNU_SYSTEM\fP 4 Partie \(Fo\ syst\(`eme\ \(Fc de \fBDEB_BUILD_GNU_TYPE\fP. .IP \fBDEB_BUILD_GNU_TYPE\fP 4 Type de syst\(`eme GNU de la machine de construction. .IP \fBDEB_BUILD_MULTIARCH\fP 4 Le type en clair de syst\(`eme GNU de la machine de construction, utilis\('e pour les chemins du syst\(`eme de fichiers (depuis dpkg\ 1.16.0). .IP \fBDEB_HOST_ARCH\fP 4 Architecture Debian de la machine h\(^ote. .IP \fBDEB_HOST_ARCH_ABI\fP 4 Nom de l'ABI Debian de la machine h\(^ote (depuis dpkg\ 1.18.11). .IP \fBDEB_HOST_ARCH_LIBC\fP 4 Nom de la libc Debian de la machine h\(^ote (depuis dpkg\ 1.18.11). .IP \fBDEB_HOST_ARCH_OS\fP 4 Nom du syst\(`eme Debian de la machine h\(^ote (depuis dpkg\ 1.13.2). .IP \fBDEB_HOST_ARCH_CPU\fP 4 Nom du processeur Debian de la machine h\(^ote (depuis dpkg\ 1.13.2). .IP \fBDEB_HOST_ARCH_BITS\fP 4 Taille de pointeur de la machine h\(^ote (en bits, depuis dpkg\ 1.15.4). .IP \fBDEB_HOST_ARCH_ENDIAN\fP 4 Boutisme de la machine h\(^ote (petit ou gros, depuis dpkg\ 1.15.4). .IP \fBDEB_HOST_GNU_CPU\fP 4 Partie \(Fo\ processeur\ \(Fc de \fBDEB_HOST_GNU_TYPE\fP. .IP \fBDEB_HOST_GNU_SYSTEM\fP 4 Partie \(Fo\ syst\(`eme\ \(Fc de \fBDEB_HOST_GNU_TYPE\fP. .IP \fBDEB_HOST_GNU_TYPE\fP 4 Type de syst\(`eme GNU de la machine h\(^ote. .IP \fBDEB_HOST_MULTIARCH\fP 4 Le type en clair de syst\(`eme GNU de la machine h\(^ote, utilis\('e pour les chemins du syst\(`eme de fichiers (depuis dpkg\ 1.16.0). .IP \fBDEB_TARGET_ARCH\fP 4 L'architecture Debian de la machine cible (depuis dpkg\ 1.17.14). .IP \fBDEB_TARGET_ARCH_ABI\fP 4 Nom de l'ABI Debian de la machine cible (depuis dpkg\ 1.18.11). .IP \fBDEB_TARGET_ARCH_LIBC\fP 4 Nom de la libc Debian de la machine cible (depuis dpkg\ 1.18.11). .IP \fBDEB_TARGET_ARCH_OS\fP 4 Nom du syst\(`eme Debian de la machine cible (depuis dpkg\ 1.17.14). .IP \fBDEB_TARGET_ARCH_CPU\fP 4 Nom du processeur Debian de la machine cible (depuis dpkg\ 1.17.14). .IP \fBDEB_TARGET_ARCH_BITS\fP 4 Taille de pointeur de la machine cible (en bits, depuis dpkg\ 1.17.14). .IP \fBDEB_TARGET_ARCH_ENDIAN\fP 4 Boutisme de la machine cible (petit ou gros, depuis dpkg\ 1.17.14). .IP \fBDEB_TARGET_GNU_CPU\fP 4 Partie \(Fo\ processeur\ \(Fc de \fBDEB_TARGET_GNU_TYPE\fP (depuis dpkg\ 1.17.14). .IP \fBDEB_TARGET_GNU_SYSTEM\fP 4 Partie \(Fo\ syst\(`eme\ \(Fc de \fBDEB_TARGET_GNU_TYPE\fP (depuis dpkg\ 1.17.14). .IP \fBDEB_TARGET_GNU_TYPE\fP 4 Type du syst\(`eme GNU de la machine cible (depuis dpkg\ 1.17.14). .IP \fBDEB_TARGET_MULTIARCH\fP 4 Le type en clair du syst\(`eme GNU de la machine cible, utilis\('e pour les chemins du syst\(`eme de fichiers (depuis dpkg\ 1.17.14). . .SH FICHIERS .SS "Tables d'architectures" Tous ces fichiers sont n\('ecessaires afin que \fBdpkg\-architecture\fP puisse fonctionner. Leurs emplacements peuvent \(^etre modifi\('es lors du traitement \(`a l'aide de la variable d'environnement \fBDPKG_DATADIR\fP. Ces tables contiennent en premi\(`ere ligne un pseudo\-champ de \fBVersion\fP de format pour indiquer leur format de sorte que les analyseurs peuvent v\('erifier s'ils les comprennent, tel que \(Fo\ #\ Version=1.0\ \(Fc. .TP \fI/usr/share/dpkg/table\-processeur\fP Table des noms de processeurs connus et liaison avec leur nom GNU. Version\ 1.0 de format (depuis dpkg\ 1.13.2). .TP \fI/usr/share/dpkg/table\-syst\(`eme\-exploitation\fP Table des noms des syst\(`emes d'exploitation connus et liaison avec leurs noms GNU. Version\ 2.0 de format (depuis dpkg\ 1.18.11). .TP \fI/usr/share/dpkg/table\-n\-uplet\fP Correspondances entre les n\-uplets de l'architecture Debian et les noms des architectures Debian. Format version\ 1.0 (depuis dpkg\ 1.18.11). .TP \fI/usr/share/dpkg/table\-ABI\fP Table des substituts d'attributs d'ABI d'architecture Debian. Format version\ 2.0 (depuis dpkg\ 1.18.11). .SS "Gestion de l'empaquetage" .TP \fI/usr/share/dpkg/architecture.mk\fP Un fragment de fichier Makefile qui d\('efinit correctement et exporte toutes les variables que \fBdpkg\-architecture\fP peut fournir (depuis dpkg\ 1.16.1). . .SH EXEMPLES \fBdpkg\-buildpackage\fP accepte l'option \fB\-a\fP, et la passe \(`a \fBdpkg\-architecture\fP. Voici d'autres exemples\ : .IP CC=i386\-gnu\-gcc dpkg\-architecture \-c debian/rules build .IP eval \`dpkg\-architecture \-u\` .PP V\('erifie si l'architecture en cours (ou celle sp\('ecifi\('ee) est identique \(`a une architecture\ : .IP dpkg\-architecture \-elinux\-alpha .IP dpkg\-architecture \-amips \-elinux\-mips .PP V\('erifie si l'architecture en cours (ou celle sp\('ecifi\('ee) est un syst\(`eme Linux\ : .IP dpkg\-architecture \-ilinux\-any .IP dpkg\-architecture \-ai386 \-ilinux\-any . .SS "Utilisation dans debian/rules" Les variables d'environnement d\('efinies par \fBdpkg\-architecture\fP sont fournies \(`a \fIdebian/rules\fP comme variables pour make (consultez la documentation de make). Cependant, vous ne devez pas compter l\(`a\-dessus puisque cela emp\(^eche les appels manuels \(`a ce script. \(`A la place, vous devez toujours les initialiser en utilisant \fBdpkg\-architecture\fP avec l'option \fB\-q\fP. Voici quelques exemples, qui indiquent aussi comment am\('eliorer la gestion des compilations crois\('ees de votre paquet\ : .PP R\('ecup\('eration du type de syst\(`eme GNU et passage \(`a ./configure\ : .PP .RS 4 .nf 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) \e \-\-host=$(DEB_HOST_GNU_TYPE) endif [...] \&./configure $(confflags) .fi .RE .PP Effectuer une action pour une architecture sp\('ecifique\ : .PP .RS 4 .nf DEB_HOST_ARCH\ ?= $(shell dpkg\-architecture \-qDEB_HOST_ARCH) ifeq ($(DEB_HOST_ARCH),alpha) [...] endif .fi .RE .PP Ou, si vous n'avez besoin que de v\('erifier le type du processeur et du syst\(`eme, utilisez les variables \fBDEB_HOST_ARCH_CPU\fP ou \fBDEB_HOST_ARCH_OS\fP. .PP Veuillez noter qu'il est \('egalement possible d'utiliser un fragment externe de fichier Makefile pour d\('efinir correctement toutes les variables que \fBdpkg\-architecture\fP peut fournir\ : .PP .RS 4 .nf include /usr/share/dpkg/architecture.mk ifeq ($(DEB_HOST_ARCH),alpha) [...] endif .fi .RE .PP Dans tous les cas, il ne faut jamais utiliser \fBdpkg \-\-print\-architecture\fP pour r\('ecup\('erer les informations relatives \(`a l'architecture pendant la construction d'un paquet. . .SH ENVIRONNEMENT .TP \fBDPKG_DATADIR\fP Si cette variable est d\('efinie, elle sera utilis\('ee comme r\('epertoire de donn\('ees de \fBdpkg\fP o\(`u sont plac\('ees les tables d'architecture (depuis dpkg\ 1.14.17). Par d\('efaut \(Fo/usr/share/dpkg\(Fc. .TP \fBDPKG_COLORS\fP D\('efinit le mode de couleur (depuis dpkg\ 1.18.5). Les valeurs actuellement accept\('ees sont \fBauto\fP (par d\('efaut), \fBalways\fP et \fBnever\fP. .TP \fBDPKG_NLS\fP Si cette variable est d\('efinie, elle sera utilis\('ee pour d\('ecider l'activation de la prise en charge des langues (NLS \(en\ Native Language Support), connu aussi comme la gestion de l'internationalisation (ou i18n) (depuis dpkg\ 1.19.0). Les valeurs permises sont\ : \fB0\fP et \fB1\fP (par d\('efaut). . .SH NOTES Tous les noms de commandes et d'options longs ne sont disponibles qu'\(`a partir de dpkg\ 1.17.17. . .SH "VOIR AUSSI" \fBdpkg\-buildpackage\fP(1). .SH TRADUCTION Ariel VARDI , 2002. Philippe Batailler, 2006. Nicolas Fran\(,cois, 2006. Veuillez signaler toute erreur \(`a .