Supposez que vous travaillez sur un programme de conversion d'unités de mesures.
Figure: length.c - Conversion d'unités de longueur
Figure: volume.c - Conversion d'unités de volume
Figure: mass.c - Conversion d'unités de poids
Ces fichiers sont séparés. Pour rendre ces fonctions plus facilement accessibles à d'autres programmeurs, elles devraient être stockées dans une librarie archive. Pour réaliser cette opération, vous devez en premier lieu compiler les fichiers sources, soit séparément, soit ensemble sur la même ligne de commande:
$ cc -Aa -c length.c volume.c mass.c
Compilez ensuite les fichiers .o par la commande ar suivie du nom de la librairie, par exemple libunit.a, suivie des noms des fichiers objets à placer dans cette librairie:
$ ar r libunit.a length.o volume.o mass.o ar : creating libunit.a
Pour vérifier que cela a été créé correctement, entrez la commande:
$ ar t libunit.a length.o volume.o mass.o
Maintenant, supposez que vous avez écrit un programme, appelé convert.c, qui appelle plusieurs fonctions de la librairie libunit.a. Vous pouvez alors le compiler avec la librairie par cc:
$ cc -Aa convert.c libunit.aou bien avec l'option -l en mettant libunit.a dans le répertoire /usr/lib ou /lib avant de le compiler:
$ cc -Aa convert.c -lunit