script configureren - configure script
Een configuratiescript is een uitvoerbaar script dat is ontworpen om te helpen bij het ontwikkelen van een programma dat op een groot aantal verschillende computers kan worden uitgevoerd. Het past bij de bibliotheken op de computer van de gebruiker, met die door het programma vereist voordat het opstellen van het uit de broncode .
Zoals gebruikelijk hebben alle configuratiescripts de naam configure. Gewoonlijk worden configuratiescripts geschreven voor de Bourne-shell , maar ze kunnen voor uitvoering in elke gewenste shell worden geschreven.
Gebruik
Het rechtstreeks verkrijgen van software uit de broncode is een gebruikelijke procedure op Unix- computers en omvat over het algemeen de volgende drie stappen: het configureren van de makefile , het compileren van de code en tenslotte het installeren van het uitvoerbare bestand op standaardlocaties. Een configuratiescript voert de eerste van deze stappen uit. Het gebruik van configuratiescripts is een geautomatiseerde methode voor het genereren van makefiles vóór compilatie om de software aan te passen aan het systeem waarop het uitvoerbare bestand moet worden gecompileerd en uitgevoerd. De uiteindelijke uitvoerbare software wordt meestal verkregen door de volgende opdrachten uit te voeren in een shell die momenteel verwijst naar de map met de broncode:
./configure
make
make install
Men moet typen in ./configureplaats van eenvoudigweg configureaan de shell aan te geven dat het script zich in de huidige map bevindt. Dit komt omdat Unix- configuraties uit veiligheidsoverwegingen niet in de huidige map zoeken naar uitvoerbare bestanden. Dus om programma's in die map uit te voeren, moet men expliciet hun locatie specificeren.
Na voltooiing wordt configureeen rapport afgedrukt naar config.log. Uitvoeren ./configure --helpgeeft een lijst met opdrachtregelargumenten voor het in- of uitschakelen van extra functies, zoals:
./configure --libs="-lmpfr -lgmp"
./configure --prefix=/home/user/local
De eerste regel bevat de mpfren gmpbibliotheken. De tweede regel vertelt makeom de definitieve versie te installeren in /home/user/local.
Vaak zit er een document met instructies bij. Dit kan handig zijn als het configureniet lukt. Dit bestand wordt gewoonlijk INSTALL.
Genereren configure
Softwareontwikkelaars vereenvoudigen de uitdaging van platformonafhankelijke softwareontwikkeling door GNU Autotools te gebruiken . Deze scripts vragen het systeem waarop ze worden uitgevoerd naar omgevingsinstellingen, platformarchitectuur en het bestaan en de locatie van vereiste build- en runtime-afhankelijkheden. Ze slaan de verzamelde informatie op in configure.acof de nu verouderde informatie die tijdens de installatiefase configure.inkan worden gelezen configure.
Afhankelijkheidscontrole
Bij nieuwe ontwikkelingen is het controleren van de bibliotheekafhankelijkheid grotendeels uitgevoerd met pkg-config via de m4- macro, PKG_CHECK_MODULES. Voordat pkg-config aan populariteit won, werden er aparte m4-macro's gemaakt om bestanden te lokaliseren waarvan bekend is dat ze worden opgenomen in de distributie van bibliotheken waarvan ze afhankelijk zijn.
Geschiedenis
Het eerste programma te komen met een configure script werd rn door Larry Wall in 1984. Het script is geschreven door de hand en produceerde een schertsende running commentaar wanneer het wordt uitgevoerd. Het overleeft nog steeds als onderdeel van het bouwsysteem van het trn- programma.
Sindsdien is er een ecosysteem van programma's ontstaan om het maken van configuratiescripts zoveel mogelijk te automatiseren, waarvan het meest voorkomende het GNU Autoconf- systeem is.