Libtool

Un article de Wikipédia, l'encyclopédie libre.

GNU Libtool est un logiciel du Projet GNU qui sert à créer des bibliothèques portables.

Dans le passé, si un programmeur voulait profiter des avantages des bibliothèques dynamiques, il devait écrire du code spécifique à chacune des plateformes sur lesquelles la bibliothèque était compilée. Il devait aussi écrire un système de configuration permettant à l'utilisateur qui installe le logiciel de décider quel type de bibliothèque compiler.

Libtool simplifie la tâche du programmeur en encapsulant à la fois les dépendances par rapport à chaque plateforme, ainsi que l'interface utilisateur, dans un seul script. Cet outil est conçu de façon que toute la fonctionnalité de chaque plateforme soit accessible via une interface générique, tout en cachant les détails obscurs au programmeur.

L'interface de Libtool vise à être cohérente. Les utilisateurs ne sont pas supposés devoir lire de la documentation de bas niveau pour réussir à faire compiler des bibliothèques dynamiques. Ils devraient n'avoir qu'à exécuter le script configure (ou un équivalent), et Libtool devrait se charger des détails.

On utilise typiquement Libtool avec Autoconf et Automake, deux autres outils du système de compilation GNU.

[modifier] problèmes liés à libtool

  • libtool s'utilise très mal dans les environnement de crosscompilation, le fait qu'il enregistre des informations en dur dans les fichiers .la (path des librairies...) peut poser plus de problèmes que cette outil n'en résoud
  • libtool peut entrainer des erreurs de laison toujours à cause des fameux .la
  • créer une librairie dynamique est souvent plus facile en faisant un man ld qu'en essayant d'utiliser libtool, avec gnu ld, -shared -Bdynamic -soname suffisent à créer une librairie dynamique...

[modifier] Voir aussi

[modifier] Liens externes

Autres langues