GNU Autotools

Wikipediasta
(Ohjattu sivulta GNU build system)
Siirry navigaatioon Siirry hakuun
Käännöstyökalut ja niiden käsittelemät tiedostot kaaviona.

GNU Autotools tai GNU Build System on GNU-projektin työkalukokoelma tietokoneohjelman kääntämiseen eri alustoilla.[1]

Autotools sisältää:

  • GNU Autoconf
  • GNU Automake
  • GNU Libtool

Autotools tuottaa Makefile-tiedosto(t) make-ohjelmalle, jota käytetään ohjelmointikielen kääntäjän ja linkkeriohjelman kutsumiseen.

Käännösprosessi Autotoolsilla yleensä sisältää:[2]

  1. configure-komennon ajamisen – tunnistaa kohdejärjestelmän, tarvittavat asetukset, kirjastojen sijainnin ja minne uudet ohjelmat asennetaan
  2. make-komennon ajamisen – kääntäminen lähdekoodista ajettavaksi ohjelmaksi
  3. make install – käännetyn ohjelman, kirjaston ja muiden tiedostojen kopiointi järjestelmässä havaittuun sijaintiin

Autoconf tuottaa configure-skriptin configure.ac-tiedoston pohjalta, jossa käytetään M4-kielen syntaksia.[2]

Automake tuottaa Makefile-tiedostot Makefile.am-tiedostossa annettujen tietojen pohjalta, jossa käytetään Makefile-syntaksia.[2]

Käyttö[muokkaa | muokkaa wikitekstiä]

Autotools on käytössä useissa avoimen lähdekoodin projekteissa.

Muun muassa X.Org-ohjelmisto on lisännyt Autotoolsille vaihtoehtona tuen Meson-käännösjärjestelmälle.[3] GNOME-projektilla on tavoitteena siirtyä Autotoolsista Meson-järjestelmään.[4] KDE-projekti päätti vuonna 2006 siirtyä vanhenevasta Autotoolsista CMakeen.[5]

Katso myös[muokkaa | muokkaa wikitekstiä]

Lähteet[muokkaa | muokkaa wikitekstiä]

  1. Introducing the GNU Build System gnu.org. Viitattu 19.10.2019. (englanniksi)
  2. a b c Introduction to GNU Autotools opensource.com. Viitattu 19.10.2019. (englanniksi)
  3. The Meson Build System Is Being Fitted For The X.Org Server phoronix.com. 27.3.2017. Viitattu 19.10.2019. (englanniksi)
  4. GNOME Goal: Port modules to use Meson build system wiki.gnome.org. Viitattu 19.10.2019. (englanniksi)
  5. Why the KDE project switched to CMake -- and how (continued) lwn.net. 21.6.2006. Viitattu 17.9.2020. (englanniksi) 

Aiheesta muualla[muokkaa | muokkaa wikitekstiä]