Content-type: text/html
Manpage of AR
AR
Section: Outils de Développement GNU (1)
Updated: 08/08/2002
Index
Return to Main Contents
NOM
ar - Créer, modifier et extraire des archives.
SYNOPSIS
ar [-X32_64] [-]p[mod [posrel]
[numéro]] archive [membre...]
DESCRIPTION
Le programme GNU ar crée, modifie et extrait des fichiers à
partir d'archives. Une archive est un fichier unique contenant une
collection d'autres fichiers dans une structure qui permet de retrouver les
fichiers originaux individuels (appelés membres de l'archive).
Le contenu, le mode (permissions), l'horodate, le propriétaire et le
groupe des fichiers originaux sont préservés dans l'archive, et
peuvent être reconstitués lors de l'extraction.
GNU ar peut gérer des archives dont les membres ont des
noms de n'importe quelle longueur ; néanmoins, en fonction de la
configuration de ar sur votre système, une limite sur la longueur
des noms des membres peut être imposée pour assurer la compatibilité
avec les formats d'archive maintenus par d'autres outils. Si elle
existe, la limite est souvent de 15 caractères (typique des formats
liés au a.out), ou de 16 caractères (typique des formats liés à coff).
ar est considéré être un utilitaire binaire car les archives de ce
type sont le plus souvent comme bibliothèques
contenant des sous-routines fréquemment utilisées.
ar crée un index des symboles définis dans les modules objets
relogeables de l'archive quand vous spécifiez le modificateur s.
Une fois créé, cet index est mis à jour dans l'archive à chaque fois
que ar modifie son contenu (sauf dans le cas de l'opération de
mise à jour q). Une archive disposant d'un tel index accélère
l'édition des liens avec la bibliothèque, et permet aux routines de
cette dernière de s'appeler mutuellement quels que soient leurs
emplacements respectifs dans l'archive.
Vous pouvez utiliser nm -s ou nm --print-armap pour
lister cette table d'index. Si l'archive n'en possède pas, une autre
forme de ar appelée ranlib peut être utilisée pour
n'ajouter que la table.
GNU ar est conçu pour être compatible avec deux
mécanismes différents. Vous pouvez contrôler son activité en utilisant
des options de ligne de commandes, comme les différentes
variantes de ar sur les systèmes Unix ; si vous spécifiez
-M comme unique option sur la ligne de commandes, vous pouvez
le contrôler grâce à un script fourni via l'entrée standard, à la
manière du programme MRI « librarian ».
OPTIONS
GNU ar vous permet de mélanger le code d'opération
p et les drapeaux modificateurs mod dans n'importe quel
ordre, à l'intérieur du premier argument de la ligne de commandes.
Si vous le souhaitez, vous pouvez faire débuter le premier argument de
la ligne de commandes par un tiret.
La lettre p spécifie l'opération à exécuter ; elle peut
être n'importe laquelle des lettres suivantes, mais vous ne pouvez en
spécifier qu'une seule :
- d
-
Supprimer (delete) des modules de l'archive. Spécifiez le
nom des modules à effacer en tant que membre... ; l'archive
n'est pas modifiée si vous n'indiquez aucun fichier à effacer.
Si vous spécifiez le modificateur v, ar listera chaque
module lors de sa suppression.
- m
-
Utilisez cette opération pour déplacer (move) des membres dans
une archive.
L'ordre des membres dans une archive peut influencer la façon dont les
programmes sont liés en utilisant la bibliothèque, si un symbole est
défini dans plus d'un membre.
Si aucun modificateur n'est utilisé avec « m », tous les membres
nommés dans les arguments membre sont déplacés à la fin de
l'archive ; vous pouvez utiliser les modificateurs a, b
ou i pour les déplacer à un autre endroit (que vous spécifiez).
- p
-
Afficher (print) les membres spécifiés de l'archive sur la
sortie standard. Si le modificateur v est utilisé, afficher le
nom du membre avant de copier son contenu sur la sortie standard.
Si vous ne spécifiez aucun argument membre, tous les fichiers de
l'archive seront affichés.
- q
-
Concaténation rapide (quick append) ; historiquement,
ajouter les fichiers membre... à la fin de l'archive, sans
se soucier des remplacements.
Les modificateurs a, b et i n'affectent pas
cette opération ; les nouveaux membres sont toujours placés à la fin
de l'archive.
Le modificateur v fait lister par ar chaque fichier
pendant son ajout.
Puisque le but de cette opération est la vitesse, l'index de la table
des symboles de l'archive n'est pas mis à jour, même s'il existait
déjà ; vous pouvez utiliser explicitement ar s ou ranlib
pour mettre à jour l'index de la table des symboles.
Néanmoins, de trop nombreux systèmes différents supposent que la
concaténation rapide reconstruit l'index, et GNU ar implémente donc
« q » comme un synonyme de « r ».
- r
-
Insérer les fichiers membre... dans l'archive (avec
remplacement). Cette opération diffère de q dans le sens
où tous les membres existants au préalable sont supprimés si leur nom
correspond à l'un de ceux que l'on ajoute.
Si l'un des fichiers nommés dans membre... n'existe pas,
ar affiche un message d'erreur, et laisse inchangé tout membre
existant de l'archive qui porte ce nom.
Par défaut, les nouveaux membres sont ajoutés à la fin du fichier,
mais vous pouvez utiliser un des modificateurs a, b ou
i pour demander le placement relatif à un membre existant.
Le modificateur v utilisé avec cette opération affiche une ligne
de sortie pour chaque fichier inséré, ainsi que l'une des lettres
a ou r pour indiquer si le fichier a été concaténé (aucun
ancien membre effacé) ou remplacé.
- t
-
Afficher une table listant le contenu de l'archive, ou celui
des fichiers présents à la fois dans membre... et dans
l'archive. Normalement, seul le nom du membre est montré ; si vous
voulez également voir le mode (permissions), l'horodate, le
propriétaire, le groupe et la taille, vous pouvez le requérir en
spécifiant également le modificateur v.
Si vous ne précisez pas de membre, tous les fichiers de
l'archive seront listés.
S'il y a plus d'un fichier de même nom (disons fie) dans une
archive (disons b.a), ar t b.a fie listera uniquement la
première instance ; pour les voir toutes, vous devez demander un
listing complet -- dans notre exemple, ar t b.a.
- x
-
Extraire des membres (nommés membre...) de l'archive. Vous
pouvez utiliser le modificateur v avec cette opération, pour
demander à ar de lister chaque nom durant son extraction.
Si vous ne mentionnez aucun membre, tous les fichiers de
l'archive seront extraits.
Quelques modificateurs (mod) peuvent suivre immédiatement la
lettre p pour modifier le comportement d'une opération :
- a
-
Ajouter les nouveaux fichiers après un membre existant dans
l'archive. Si vous utilisez le modificateur a, le nom d'un
membre existant dans l'archive doit être présent comme argument
posrel (position relative) avant la spécification de
l'archive.
- b
-
Ajouter les nouveaux fichiers avant un membre existant dans
l'archive. Si vous utilisez le modificateur b, le nom d'un
membre existant dans l'archive doit être présent comme argument
posrel avant la spécification de l'archive (comme pour
i).
- c
-
Créer l'archive. L'archive spécifiée est toujours créée
si elle n'existait pas, quand vous demandez une mise à jour. Mais un
avertissement est émis à moins que vous ne spécifiiez à l'avance que
vous voulez la créer, en utilisant ce modificateur.
- f
-
Tronquer les noms dans l'archive. GNU ar autorise
normalement des noms de fichiers de longueur quelconque, ce qui crée
des archives qui ne sont pas compatibles avec le programme ar
natif sur certains systèmes. Si cela pose un problème, le modificateur
f peut être utilisé pour tronquer les noms de fichiers lors de
leur insertion dans l'archive.
- i
-
Insérer les nouveaux fichiers avant tout membre existant dans
l'archive. Si vous utilisez le modificateur i, le nom d'un
membre existant de l'archive doit être présent comme argument
posrel avant la spécification de l'archive (comme pour
b).
- l
-
Ce modificateur est accepté mais n'est pas utilisé.
- N
-
Utiliser le paramètre numéro. C'est utilisé s'il y a plusieurs
entrées dans l'archive portant le même nom. Extrait ou supprime la
numéro-ième instance du nom donné dans l'archive.
- o
-
Préserver les dates originales des membres lors de leur
extraction. Si vous ne spécifiez pas ce modificateur, les fichiers
extraits de l'archive seront horodatés avec l'heure de l'extraction.
- P
-
Utiliser le nom du chemin complet lors de la reconnaissance des
noms de l'archive. GNU ar ne peut pas créer d'archive
ayant un nom de chemin complet (de telles archives ne suivent pas la
norme POSIX), mais d'autres créateurs d'archives le
peuvent. Cette option dit à GNU ar de reconnaître les
noms de fichiers en utilisant un nom de chemin complet, ce qui peut
être pratique lors de l'extraction d'un seul fichier d'une archive
créée par un autre outil.
- s
-
Écrire un index des fichiers objets dans l'archive, ou en mettre à
jour un existant, même si l'archive n'a subi aucune autre
modification. Vous pouvez utiliser ce drapeau modificateur avec
n'importe quelle opération, ou bien tout seul. Lancer ar s sur
une archive est équivalent à exécuter ranlib dessus.
- S
-
Ne pas générer de table des symboles de l'archive. Cela peut fortement
accélérer la construction d'une grande bibliothèque. L'archive
résultante ne peut pas être utilisée par l'éditeur de liens. Pour
construire une table des symboles, vous devez omettre le modificateur
S lors de la dernière exécution de ar, ou lancer
ranlib sur l'archive.
- u
-
Normalement, ar r... insère tous les fichiers listés dans
l'archive. Si vous ne voulez insérer que les fichiers
listés qui sont plus récents que les membres existants de même
nom, utilisez ce modificateur. Le modificateur u n'est autorisé
que pour l'opération r (remplacer). En particulier, la
combinaison qu n'est pas autorisée, puisque la vérification des
horodates ferait perdre l'avantage de vitesse procuré par l'opération
q.
- v
-
Ce modificateur requiert la version verbeuse (bavarde) d'une
opération. Beaucoup d'opérations affichent des informations
additionnelles, comme le nom des fichiers traités, quand le
modificateur v est ajouté.
- V
-
Ce modificateur affiche le numéro de version de ar.
ar ignore une option originelle orthographiée -X32_64,
pour la compatibilité avec AIX. Le comportement généré par
cette option est celui utilisé par défaut par GNU ar.
ar ne prend en charge aucune des autres options -X ; en
particulier, il ne prend pas en charge l'option -X32 qui est
utilisée par défaut par le ar AIX.
VOIR AUSSI
nm(1), ranlib(1), et les entrées Info pour binutils.
COPYRIGHT
Copyright (c) 1991, 92, 93, 94, 95, 96, 97, 98, 99, 2000, 2001, 2002
Free Software Foundation, Inc.
L'autorisation est donnée de copier, de distribuer et/ou de modifier
ce document sous les termes de la GNU Free Documentation License
version 1.1 ou toute autre version ultérieure publiée par la Free
Software Foundation, sans section invariante ni texte de couverture
ni texte de quatrième de couverture. Une copie de la licence est
incluse dans la section intitulée « GNU Free Documentation License ».
TRADUCTION
Frédéric Delanoy <delanoy_f at yahoo.com>, 2002.
Index
- NOM
-
- SYNOPSIS
-
- DESCRIPTION
-
- OPTIONS
-
- VOIR AUSSI
-
- COPYRIGHT
-
- TRADUCTION
-
This document was created by
man2html,
using the manual pages.
Time: 20:41:52 GMT, July 10, 2005