Technopedia Center
PMB University Brochure
Faculty of Engineering and Computer Science
S1 Informatics S1 Information Systems S1 Information Technology S1 Computer Engineering S1 Electrical Engineering S1 Civil Engineering

faculty of Economics and Business
S1 Management S1 Accountancy

Faculty of Letters and Educational Sciences
S1 English literature S1 English language education S1 Mathematics education S1 Sports Education
  • Registerasi
  • Brosur UTI
  • Kip Scholarship Information
  • Performance
  1. Weltenzyklopädie
  2. GNU Automake — Wikipédia
GNU Automake — Wikipédia 👆 Click Here! Read More..
Un article de Wikipédia, l'encyclopédie libre.
(Redirigé depuis Automake)
GNU Automake
Description de l'image Official gnu.svg.
Description de cette image, également commentée ci-après
Diagramme de flux de données d'autoconf et d'automake.
Informations
Créateur David MacKenzie (d)Voir et modifier les données sur Wikidata
Développé par Projet GNU
Première version 1994
Dernière version 1.18.1 (26 juin 2025)[1]Voir et modifier les données sur Wikidata
Dépôt git.savannah.gnu.org/cgit/automake.gitVoir et modifier les données sur Wikidata
Écrit en Perl
Système d'exploitation Le système d'exploitation GNU-Linux, BSD et macOSVoir et modifier les données sur Wikidata
Environnement Multiplateforme
Type Build system (d)
Paquet GNUVoir et modifier les données sur Wikidata
Licence Licence publique générale GNU version 2 ou ultérieureVoir et modifier les données sur Wikidata
Documentation www.gnu.org/software/automake/manualVoir et modifier les données sur Wikidata
Site web www.gnu.org/software/automake/

modifier - modifier le code - voir Wikidata (aide)

GNU Automake est un logiciel générant des makefiles portables qui peuvent être utilisés par make pour compiler des programmes. C'est un logiciel libre développé et maintenu par le projet GNU et utilisé dans le processus de compilation du système GNU. Les makefiles produits se conforment aux normes de programmation de GNU.

Automake est écrit en Perl et doit être utilisé avec Autoconf, un autre outil GNU. Il contient les commandes suivantes :

  • aclocal ;
  • automake.

Automake peut présenter des difficultés à cause du fait que les versions récentes ne sont pas compatibles avec les plus anciennes. Par exemple, un projet créé avec Automake 1.4 ne fonctionnera pas avec Automake 1.9.

Approche

[modifier | modifier le code]

Automake vise à permettre au programmeur d'écrire un makefile dans un langage de plus haut niveau, plutôt que d'avoir à écrire le makefile au complet à la main. Dans les cas simples, il suffit de donner :

  • une ligne qui déclare le nom du programme à compiler ;
  • une liste de fichiers sources ;
  • une liste d'options à passer au compilateur (notamment, dans quels répertoires les en-têtes seront trouvés) ;
  • une liste d'options à passer à l'éditeur de liens (de quelles bibliothèques le programme a besoin et dans quels répertoires elles se trouvent).

À partir de cette information, Automake génère un makefile qui permet à l'usager de :

  • compiler le programme ;
  • nettoyer (supprimer les fichiers produits par la compilation) ;
  • installer le programme dans les répertoires prévus par les normes GNU ;
  • désinstaller le programme des répertoires où il a été installé ;
  • créer une archive de distribution des sources (souvent appelée tarball en anglais) ;
  • vérifier que cette archive est auto-suffisante, et en particulier qu'il est possible de compiler le programme dans un répertoire autre que celui où les sources sont déployées) ;

Automake s'occupe aussi de générer automatiquement les informations de dépendances, afin que lorsqu'un fichier source est modifié, la prochaine invocation de la commande make sache quels fichiers sources ont besoin d'être recompilés en conséquence. Si le compilateur le permet, Automake tente de rendre le système de dépendances dynamique : chaque fois qu'un fichier source est compilé, les dépendances de ce fichier sont mises à jour en demandant au compilateur de régénérer la liste des dépendances de ce fichier. Autrement dit, la gestion des dépendances est un effet de bord du processus de compilation.

Ceci tente d'éviter le problème avec certains systèmes de dépendances statiques où les dépendances ne sont détectées qu'une seule fois quand le programmeur commence à travailler sur un projet. Dans un tel cas, si un fichier source acquiert une nouvelle dépendance (par exemple, si on ajoute une directive #include à un fichier source en C), une disparité apparaît alors entre les vraies dépendances et celles qui sont utilisées par le système de compilation. Le programmeur devrait alors régénérer les dépendances, mais il risque d'oublier de le faire.

Automake facilite aussi la compilation de bibliothèques en générant automatiquement des makefiles qui invoquent GNU Libtool. Le programmeur est alors exempté d'avoir à utiliser Libtool directement et le projet bénéficie d'un outil capable de créer des bibliothèques de façon portable.

Bibliographie

[modifier | modifier le code]
  • (en) « A Practitioner's Guide to GNU Autoconf, Automake, and Libtool » (par John Calcote - (ISBN 978-1-59327-206-7)).
  • (en) « GNU Autoconf, Automake, and Libtool » (Gary V. Vaughan - (ISBN 978-1578701902)) Lire en ligne

Articles connexes

[modifier | modifier le code]
  • Autotools
  • CMake
  • SCons

Notes et références

[modifier | modifier le code]
  1. ↑ (en) Karl Berry (d), « automake-1.18.1 released [stable] », 26 juin 2025 (consulté le 26 juin 2025)

Références externes

[modifier | modifier le code]
  • (en) Code source sur la plateforme GNU Savannah.
  • (en) GNU coding standards.
  • (en) Guide Autotools.
v · m
Projet GNU
Histoire
  • Manifeste GNU
  • Free Software Foundation (FSF)
  • Histoire du logiciel libre
Licences
  • GNU General Public License (GPL)
  • GNU Lesser General Public License (LGPL)
  • GNU Affero General Public License (AGPL)
  • GNU Free Documentation License (GFDL)
Logiciels
  • Système d'exploitation GNU
  • Bash
  • GCC
  • GDB
  • Emacs
  • Glibc
  • Guile
  • Guix
  • Coreutils
  • Savannah
  • GNUnet
  • Autotools
  • Liste des paquets GNU
Personnalités
  • Ludovic Courtès (auteur de GNU Guix)
  • Werner Koch
  • Christian Grothoff (auteur de GNUnet)
  • Simon Josefsson
  • Matt Lee
  • Stefan Monnier
  • Alexandre Oliva
  • Thomas Schwinge
  • Richard Stallman
  • John Gilmore
  • Mark H. Weaver
  • Andy Wingo
  • icône décorative Portail des logiciels libres
Ce document provient de « https://fr.teknopedia.teknokrat.ac.id/w/index.php?title=GNU_Automake&oldid=159397045 ».
Catégories :
  • Logiciel libre sous licence GPL
  • Logiciel pour Unix
  • Logiciel du projet GNU
  • Moteur de production
Catégories cachées :
  • Image locale différente de celle de Wikidata
  • Page utilisant P170
  • Page utilisant P348
  • Page utilisant P1324
  • Page utilisant P306
  • Page utilisant des données de Wikidata à traduire de l'anglais
  • Page utilisant P31
  • Page utilisant P275
  • Page utilisant P2078
  • Article utilisant une Infobox
  • Portail:Logiciels libres/Articles liés
  • Portail:Logiciel/Articles liés
  • Portail:Informatique/Articles liés

  • indonesia
  • Polski
  • الرية
  • Deutsch
  • English
  • Español
  • Français
  • Italiano
  • مصر
  • Nederlands
  • 本語
  • Português
  • Sinugboanong Binisaya
  • Svenska
  • Українска
  • Tiếng Việt
  • Winaray
  • 中文
  • Русски
Sunting pranala
Pusat Layanan

UNIVERSITAS TEKNOKRAT INDONESIA | ASEAN's Best Private University
Jl. ZA. Pagar Alam No.9 -11, Labuhan Ratu, Kec. Kedaton, Kota Bandar Lampung, Lampung 35132
Phone: (0721) 702022
Email: pmb@teknokrat.ac.id