GNU Automake

GNU Automake Autoconf- ja automake-tietovuokaavio. Tiedot
Kehittäjä GNU-projekti
Ensimmäinen versio 1994
Viimeinen versio 1.16.3 (18. marraskuuta 2020)
Tallettaa git.savannah.gnu.org/cgit/automake.git
Kirjoitettu Perl
Käyttöjärjestelmä GNU / Linux , BSD ( d ) ja macOS
Ympäristö Monialustainen
Tyyppi Ohjelmointityökalu ( sisään )
Lisenssi GNU General Public License -versio 2 tai uudempi ( d )
Dokumentointi www.gnu.org/software/automake/manual
Verkkosivusto www.gnu.org/software/automake/

GNU Automaken on ohjelmisto, joka tuottaa kannettava Makefile , jota voidaan käyttää tehdä kääntää ohjelmia. Se on ilmainen ohjelmisto , jonka GNU-projekti on kehittänyt ja ylläpitänyt ja jota käytetään GNU- järjestelmän rakentamiseen . Valmistetut tiedostot ovat GNU-ohjelmointistandardien mukaisia.

Automake on kirjoitettu Perlissä ja sitä tulisi käyttää Autoconfin , toisen GNU-työkalun, kanssa. Se sisältää seuraavat komennot:

Automake saattaa aiheuttaa vaikeuksia, koska viimeisimmät versiot eivät ole yhteensopivia vanhempien versioiden kanssa. Esimerkiksi Automake 1.4: lla luotu projekti ei toimi Automake 1.9: n kanssa.

Lähestyä

Automake pyrkii antamaan ohjelmoijan kirjoittaa makefile korkeamman tason kielellä sen sijaan, että hänen tarvitsisi kirjoittaa koko makefile käsin. Yksinkertaisissa tapauksissa riittää antamaan:

Näistä tiedoista Automake luo makefile-tiedoston, jonka avulla käyttäjä voi:

Automake huolehtii myös riippuvuustietojen automaattisesta luomisesta, joten kun lähdetiedostoa muokataan, seuraava make- komennon kutsu tietää, mitkä lähdetiedostot on käännettävä vastaavasti. Jos kääntäjä sallii sen, Automake yrittää tehdä riippuvuusjärjestelmästä dynaamisen: joka kerta kun lähdetiedosto käännetään, kyseisen tiedoston riippuvuudet päivitetään pyytämällä kääntäjää luomaan uudelleen luettelo kyseisen tiedoston riippuvuuksista. Toisin sanoen riippuvuuden hallinta on kokoamisprosessin sivuvaikutus.

Tämä yrittää välttää ongelman joissakin staattisissa riippuvuusjärjestelmissä, joissa riippuvuudet havaitaan vain kerran, kun ohjelmoija alkaa työskennellä projektin parissa. Tällöin, jos lähdetiedosto saa uuden riippuvuuden (esimerkiksi jos lisäämme #include -direktiivin lähdetiedostoon C: ssä ), todellisten riippuvuuksien ja kokoamisjärjestelmän käyttämien välillä on eroja. Ohjelmoijan tulisi sitten uudistaa riippuvuudet, mutta hän saattaa unohtaa tehdä niin.

Automake helpottaa myös kirjastojen rakentamista luomalla automaattisesti tiedostot, jotka käyttävät GNU Libtoolia . Ohjelmoija vapautetaan sitten Libtoolin käyttämisestä suoraan, ja projekti hyötyy työkalusta, joka pystyy luomaan kirjastoja kannettavalla tavalla.

Bibliografia

Aiheeseen liittyvät artikkelit

Huomautuksia ja viitteitä

  1. (in) Jim Meyering ( d ) , automake-1.16.3 julkaisi  " ,18. marraskuuta 2020(käytetty 19. marraskuuta 2020 )

Ulkoiset viitteet