Ero sivun ”GNU build system” versioiden välillä

Linux.fista
Siirry navigaatioon Siirry hakuun
Rivi 29: Rivi 29:


== Työnkulku ==
== Työnkulku ==
Autotoolsin työnkulku voidaan jakaa kahteen päävaiheeseen:
Autotoolsin työnkulku voidaan jakaa selkeästi kahteen vaiheeseen: kehittäjän työhön, jolla luodaan jakeluvalmis lähdepaketti ja loppukäyttäjän työhön, jolla paketti käännetään omassa ympäristössä.
* '''1. Kehittäjän työ:''' Kehittäjä kirjoittaa lähdekoodin lisäksi ''configure.ac'' (Autoconfille) ja ''Makefile.am'' (Automakelle) tiedostot, joista Autotools luo lopulliset lähdejulkaisun tiedostot.
* '''1. Kehittäjän työ:''' Kehittäjä kirjoittaa lähdekoodin lisäksi ''configure.ac'' (Autoconfille) ja ''Makefile.am'' (Automakelle) tiedostot, joista Autotools luo lopulliset lähdejulkaisun tiedostot.



Versio 13. marraskuuta 2025 kello 23.17

GNU build system (tunnetaan myös nimellä Autotools) on GNU-projektin laajalti käytetty ja tuettu työkalupaketti ohjelmien kääntämiseen ja siihen liittyviin toimenpiteisiin.

GNU Build System (Autotools)

Autotools on kokoelma ohjelmointityökaluja, jotka on suunniteltu helpottamaan lähdekoodin kääntämistä ja asentamista eri alustoille. Sen ensisijainen tavoite on tehdä ohjelmistoprojekteista siirrettäviä (portable) siten, että käyttäjän tarvitsee vain suorittaa tutut kolme vaihetta:

./configure
make
make install

Työkalupaketin osa-alueet

GNU Build System koostuu useista erillisistä työkaluista, jotka toimivat yhdessä luodakseen siirrettävyyden mahdollistavat rakennustiedostot:

GNU build system-paketin osia ovat
Työkalu Kuvaus Rooli
Autoconf Luo skriptin nimeltä configure Tarkistaa alustan ominaisuudet. Etsii järjestelmästä tarvittavat kirjastot, otsikkotiedostot ja ohjelmat.
Automake Luo kannettavan Makefile.in-tiedoston Makefile.am-syötetiedostosta. Luo kääntämiseen tarvittavat Make-tiedostot. Määrittää säännöt lähdekoodin kääntämiselle.
Aclocal Auttaa luomaan aclocal.m4-tiedoston, joka sisältää Autoconf-makroja ulkoisille ohjelmille ja kirjastoille. Makrojen kerääminen (auttaa erityisesti, kun projekti tarvitsee kolmannen osapuolen kirjastoja).
Autoreconf Ajaa kaikki edellä mainitut työkalut (Autoconf, Automake, Aclocal) automaattisesti oikeassa järjestyksessä. Kätevöittää kehittäjän työnkulkua luomalla tarvittavat konfiguraatiotiedostot projektin juuresta.
make Ei ole osa Autotools-pakettia, mutta on välttämätön rakennustyökalu. Suorittaa varsinaisen käännösprosessin käyttämällä Automaken luomia sääntöjä.

Työnkulku

Autotoolsin työnkulku voidaan jakaa selkeästi kahteen vaiheeseen: kehittäjän työhön, jolla luodaan jakeluvalmis lähdepaketti ja loppukäyttäjän työhön, jolla paketti käännetään omassa ympäristössä.

  • 1. Kehittäjän työ: Kehittäjä kirjoittaa lähdekoodin lisäksi configure.ac (Autoconfille) ja Makefile.am (Automakelle) tiedostot, joista Autotools luo lopulliset lähdejulkaisun tiedostot.
  • 2. Loppukäyttäjän työ: Loppukäyttäjä suorittaa yksinkertaisen kolmen vaiheen prosessin, joka käyttää Autotoolsin generoimia skriptejä:
./configure     # Suorittaa järjestelmätestit Autoconf-skriptillä
make            # Kääntää lähdekoodin
make install    # Asentaa ohjelman

Katso myös

Aiheesta muualla

v  k  m
GNU build system
autoconf | automake | autoreconf | aclocal