MAKE(1)

NAVN
make - GNU Make utility to maintain groups of programs

SYNOPSIS
make [TILVALG]... [MÅL]...

BESKRIVELSE

Formålet med make værktøjet er automatisk at afgøre hvilke dele af et stort program som behøver at blive genoversat, og at udføre kommandoerne til at genoversætte dem. Manualen beskriver GNU's implementation af make, som er skrevet af Richard Stallman og Roland McGrath, og i øjeblikket vedligeholdes af Paul Smith. Vores eksempler viser C-programmer, da de er de almindeligste, men du kan bruge make med ethvert programmeringssprog, hvis oversætter kan køres fra en skalkommando. Faktisk er make ikke begrænset til programmer. Du kan bruge det til at beskrive enhver opgave hvor nogle filer skal opdateres automatisk udfra andre filer, når disse andre filer ændres.

To prepare to use make, you must write a file called the makefile that describes the relationships among files in your program, and provides commands for updating each file. In a program, typically the executable file is updated from object files, which are in turn made by compiling source files.

Når først der er en passende makefil, vil denne enkle kommado:

    make

være nok til at gennemføre alle nødvendige genoversættelser. Programmet make bruger makefilens beskrivelse og tiderne for filernes sidste ændring til at afgøre hvilke af filerne, der skal opdateres. For hver af disse filer udfører programmet de kommandoer, der er noteret i makefilen.

make executes commands in the makefile to update one or more targets, where target is typically a program. If no -f option is present, make will look for the makefiles GNUmakefile, makefile, and Makefile, in that order.

Normally you should call your makefile either makefile or Makefile. (We recommend Makefile because it appears prominently near the beginning of a directory listing, right near other important files such as README.) The first name checked, GNUmakefile, is not recommended for most makefiles. You should use this name if you have a makefile that is specific to GNU Make, and will not be understood by other versions of make. If makefile is '-', the standard input is read.

make opdaterer et mål hvis det afhænger af forudsatte filer som er blevet ændret efter at målet sidst var ændret, eller hvis målet ikke eksisterer.

TILVALG

-b, -m
    Disse ignoreres af hensyn til kompatibilitet med andre versioner af make.

-B, --always-make
    Skab alle mål betingelsesløst.

-C kat, --directory=kat
    Skift til kataloget kat før læsning af makefiler eller noget som helt andet. Hvis flere -C tilvalg er angivet, bliver hvert tolket relativt til det forrige: -C / -C etc svarer til -C /etc. Det bruges typisk ved rekursive kald af make.

-d  Udskriv fejlretningsinformation foruden den normale udførelse. Fejlretningsinformationen siger hvilke filer som kandiderer til at blive genlavet, hvilke filtider som sammenlignes med hvilke resultater, hvilke filer som faktisk behøver at blive genlavet, hvilke implicitte regler der undersøges, og hvilke der anvendes - alt interessant om hvordan make beslutter hvad der skal gøres.

--debug[=FLAG]
    Print debugging information in addition to normal processing. If the FLAGS are omitted, then the behavior is the same as if -d was specified. FLAGS may be any or all of the following names, comma- or space-separated. Only the first character is significant: the rest may be omitted: all for all debugging output (same as using -d), basic for basic debugging, verbose for more verbose basic debugging, implicit for showing implicit rule search operations, jobs for details on invocation of commands, makefile for debugging while remaking makefiles, print shows all recipes that are run even if they are silent, and why shows the reason make decided to rebuild each target. Use none to disable all previous debugging flags.

-e, --environment-overrides
    Giv variable fra miljøet forrang for variable fra makefiler.

-E streng, --eval streng
    Fortolk streng via eval-funktionen, før fortolknng af makefiler.

-f fil, --file=fil, --makefile=FIL
    Brug fil som makefile.

-i, --ignore-errors
    Ignorér alle fejl i kommandoer som udføres for at genlave filer.

-I kat, --include-dir=kat
    Angiver et katalog kat at søge inkluderede makefiler i. Hvis adskillige -I tilvalg bruges til angive adskillige kataloger, søges der i katalogerne i den angivne rækkefølge. Ulig argumenterne til andre af makes flag, må katalogerne givet med -I komme umiddelbart efter flaget: -Ikat er tilladt, såvel som -Ikat. Denne syntaks er tilladt for kompatibilitet med C's præprocessors -I tilvalg.

-j [jobs], --jobs[=jobs]
    Angiver antallet af job (kommandoer) til at køre samtidigt. Hvis der er mere end et -j tilvalg, er det sidste virksomt. Hvis -j tilvalget gives uden et argument, vil make ikke begrænse antallet af job som kan køre samtidigt.

--jobserver-style=style
    The style of jobserver to use. The style may be one of fifo, pipe, or sem (Windows only).

-k, --keep-going
    Fortsæt så længe som muligt efter en fejl. Mens målet som fejlede, og dem som afhænger af det, ikke kan genlaves, kan andre ting som det afhænger af, alligevel udføres.

-l [last], --load-average[=last]
    Angiver at ingen nye job (kommandoer) skal startes hvis andre job kører, og middelbelastningen er last (et kommatal) eller højere. Uden et argument fjernes en foregående belastningsgrænse.

-L, --check-symlink-times
    Brug sidste mtime mellem symbolske lænker og mål.

-n, --just-print, --dry-run, --recon
    Udskriv kommandoerne der skulle have været udført, men afvikl dem ikke (undtagen under bestemte omstændigheder).

-o fil, --old-file=fil, --assume-old=fil
    Undlad at genlave filen fil selv hvis den er ældre end filer som den afhænger af, og undlad at genlave noget på grund af ændringer i fil. Basalt set behandles filen som værende ældst, og dens regler ignoreres.

-O[type], --output-sync[=type]
    Når der afvikles flere job parallet med -j så samles resultatet for hvert job frem for at blive blandet med resultatet fra andre job. Hvis type ikke er angivet eller er target så grupperes resultatet fra hele opskriften for hvert mål sammen. Hvis type er line grupperes resultatet fra hver kommandolinje i en opskrift sammen. Hvis type er recurse vil resultatet fra en hel rekursiv make grupperes sammen. Hvis type er none er resultatsynkronisering deaktiveret.

-p, --print-data-base
    Udskriv databasen (regler og varibelværdier) som stammer fra læsningen af makefiler; fortsæt så som sædvanligt eller som det ellers er angivet. Det udskriver også versionsinformationen fra -v valget (se nedenfor). For at udskrive databasen uden at prøve på at genlave nogen filer, brug make -p -f/dev/null.

-q, --question
    “forespørgselstilstand”. Kør ingen kommandoer, og udskriv intet; bare returnér en afslutningskode som er nul hvis de angivne mål allerede er ajour, og ellers ikkenul.

-r, --no-builtin-rules
    Udeluk brugen af indbyggede implicitte regler. Slet også den forudgivne suffiksliste for suffiksregler.

-R, --no-builtin-variables
    Definer ikke indbyggede variabler.

-s, --silent, --quiet
    Stille udførelse; udskriv ikke kommandoerne som de bliver udført.

--no-silent
    Ophæv effekten af tilvalget -s.

-S, --no-keep-going, --stop
    Ophæv effekten af tilvalget -k.

-t, --touch
    Rør filer (marker dem up to date uden egentlig at ændre dem) i stedet for at køre deres kommandoer. Det bruges til at foregive at kommandoerne blev udført for at narre fremtidige kald af make.

--trace
    Information om dispositionen af hvert mål udskrives (hvorfor målet bliver genbygget og hvilke kommander afvikles for at genbygge målet).

-v, --version
    Udskriv versionnummeret for programmet make samt en besked om ophavsretten, en liste over forfattere og at der ingen garanti er.

-w, --print-directory
    Udskriv en besked med arbejdskataloget før og efter anden udførelsen. Det kan være nyttigt til at spore fejl i komplicerede indlejringer af rekursive make kommandoer.

--no-print-directory
    Slå -w fra, selv hvis det var slået til automatisk.

--shuffle[=MODE]
    Enable shuffling of goal and prerequisite ordering. MODE is one of none to disable shuffle mode, random to shuffle prerequisites in random order, reverse to consider prerequisites in reverse order, or an integer <seed> which enables random mode with a specific seed value. If MODE is omitted the default is random.

-W fil, --what-if=fil, --new-file=fil, --assume-new=fil
    Foregiv at målet fil lige er blevet ændret. Når det bruges med -n flaget, vil det vise hvad som ville ske hvis du ændrede den fil. Uden -n er det næsten det samme som at køre en touch kommando på den givne fil før kørslen af make, bortset fra at ændringstiden kun ændres i makes fantasi.

--warn-undefined-variables
    Advar når en udefineret variabel bruges.

AFSLUT-STATUS
GNU Make exits with a status of zero if all makefiles were successfully parsed and no targets that were built failed. A status of one will be returned if the -q flag was used and make determines that a target needs to be rebuilt. A status of two will be returned if any errors were encountered.

SE OGSÅ
Hele dokumentationen for make bliver vedligeholdt som Texinfo manual. Hvis info and make programmerne er korrekt installeret på dit system vil komandoen

    info make

give dig adgang til den fulde manual.

FEJL
Se kapitlet "Problems and Bugs" i The GNU Make Manual .

FORFATTER
Denne manualside er skrevet af Dennis Morse fra Stanford University. Den er yderligere blevet opdateret af Mike Frysinger. Den er blevet omorganiseret af Roland McGrath. Vedligeholdt af Paul Smith.

OPHAVSRET
Copyright © 1992-1993, 1996-2023 Free Software Foundation, Inc. This file is part of GNU Make.

GNU Make er et frit program; du kan videredistribuere og/eller ændre programmer under betingelserne i GNU General Public License som udgivet af Free Software Foundation; enten version 3 af licensen, eller (efter dit valg) enhver nyere version.

GNU Make er distriburet i håbet om, at programmet vil være nyttigt, men UDEN NOGEN GARANTI; selv uden den underforstående garanti i SALGBARHED eller EGNETHED FOR ET BESTEMT FORMÅL. Se GNU Generel Public License for yderligere detaljer.

You should have received a copy of the GNU General Public License along with this program. If not, see https://www.gnu.org/licenses/.

OVERSÆTTELSE
Oversættere af denne manual til dansk Byrial Ole Jensen <byrial@vip.cybercity.dk> og Joe Hansen <joedalton2@yahoo.dk>

Denne oversættelse er gratis dokumentation; læs GNU General Public License version 3 (https://www.gnu.org/licenses/gpl-3.0.html) eller nyere for ophavsretbetingelser. Der er INGEN ANSVAR.

Hvis du støder på fejl i oversættelsen af ​​denne vejledning, skal du sende en besked til debian-l10n-danish@lists.debian.org.