Autokonf

Den aktuelle version af siden er endnu ikke blevet gennemgået af erfarne bidragydere og kan afvige væsentligt fra den version , der blev gennemgået den 25. august 2018; checks kræver 5 redigeringer .
Autokonf

Autoconf 2.68 konfigurerer Wine til at bygge
Type værktøjssoftware
Udvikler GNU projekt
Skrevet i perl , m4
Operativ system software på tværs af platforme
Første udgave 1991
nyeste version
Licens GPL
Internet side gnu.org/software/autocon…
 Mediefiler på Wikimedia Commons

Autoconf  er et værktøj til at oprette konfigurationsscripts ( ) configure, der automatisk konfigurerer kildepakker til at køre på Unix-lignende operativsystemer .

Indstillinger

Konfigurationsscripts genereret af Autoconf kræver ikke brugerinteraktion for at køre; normalt kræver de ikke engang, at der gives argumenter, der specificerer systemtypen. I stedet tester sådanne scripts for tilstedeværelsen af ​​hver funktion, som en given pakke kan have brug for. Under udførelsen af ​​hver af kontrollerne udskriver scripterne en rapport om de kontroller, der udføres. Disse scripts fungerer således godt på systemer, der er hybrider eller specialiserede varianter af de fleste UNIX-varianter. Der er således ingen grund til at vedligeholde filer, der viser alle funktionerne i alle versioner af hver variant af UNIX.

For hver softwarepakke, som Autoconf bruger, genereres et konfigurationsscript fra skabelonen, der viser de systemfunktioner, som pakken har brug for eller kan bruge. Når først shell-koden, der genkender og håndterer en funktion, er skrevet, tillader Autoconf, at den kode kan bruges i alle pakker, der kan bruge (eller har brug for) funktionen. Hvis du senere af en eller anden grund skal ændre shell-koden, skal ændringerne kun foretages ét sted; alle opsætningsscripts kan automatisk genskabes for at afspejle kodeændringer.

Der er flere forskellige opgaver relateret til at skabe bærbar software, som i øjeblikket ikke kan løses af Autoconf. Disse inkluderer automatisk generering af Make- filer med alle de standardmål, du har brug for, og udskiftning af standardbiblioteksfunktioner og header-filer på systemer, der mangler disse funktioner eller filer. Arbejdet i denne retning er dog i gang, og disse funktioner kan forekomme i fremtidige versioner.

Autoconf pålægger nogle begrænsninger på makronavne, der bruges i C#ifdef -programdirektiver .

Scripting med Autoconf kræver GNU m4 -programmet . Det udnytter funktioner, der ikke findes i nogle UNIX-versioner af m4-programmet. Det overskrider også de interne grænser for nogle versioner af m4, inklusive GNU m4 version 1.0. Du skal bruge version 1.1 (eller nyere) af GNU m4-programmet. Version 1.3 og nyere vil køre meget hurtigere end version 1.1 eller 1.2.

CFLAGS

CFLAGS og CXXFLAGS er enten miljøvariablenavne eller Makefile- variabler , der er indstillet til at specificere yderligere muligheder , der sendes til compileren under softwaregenerering .

Disse variabler specificeres normalt inde i Makefilen og tjener derefter som en hjælper til kommandolinjen, når compileren startes. Hvis de ikke er angivet i Makefilen, så vil de blive læst fra miljøet, hvis de er angivet der. Værktøjer som autoconf-værktøjets ./configure-konfigurationsscript tager typisk disse fra miljøet og skriver dem ind i de Make-filer, de genererer.

CFLAGS giver dig mulighed for at tilføje muligheder for C -kompileren , mens CXXFLAGS formodes at blive brugt, når du kalder C++-kompileren . På samme måde er CPPFLAGS- variablen specificeret for parametre, der sendes til C-præprocessoren .

Disse variabler bruges hovedsageligt til at specificere kompileringsmuligheder ved optimering eller fejlretning , for eksempel: -g, -O2eller (som er specifik for GCC ) -march=athlon.

pkg-config

Et værktøj, der giver en grænseflade til at få information om installerede softwarebiblioteker, inklusive muligheder for C- eller C++- kompileren , muligheder for linkeren og pakkeversion [2] . Oplysningerne er taget fra .pc-filen oprettet af pakkeadministratoren (f.eks . RPM eller deb ). Oprindeligt skrevet af James Henstridge og derefter transskriberet af Havok Pennington .

Noter

  1. Weinberg Z. autoconf-2.71 udgivet [stabil- 2021 .
  2. John Calcote. Brug af pkg-config med Autotools // Autotools: A Practitioner's Guide to GNU Autoconf, Automake og Libtool. - No Starch Press, 2010. - S. 299. - 332 s. — ISBN 9781593272067 .

Se også

Litteratur

Links