Make: Forskelle mellem versioner

Content deleted Content added
m interwiki
Rune (diskussion | bidrag)
Udvidet med eksempel
Linje 2:
'''make''' er et [[computerprogram]] til styring af omformning af [[fil (dataobjekt)|filer]] fra et [[filformat|format]] til et andet. Typisk bruges make til at styre oversættelsen af programmer fra [[kildekode]] til færdigt program.. Det bruges mest på [[Unix]]-lignende systemer, men det findes også til andre platforme. Ud fra afhængigheder, der er beskrevet i en fil med navnet Makefile og tidspunkterne for de enkelte filers seneste ændring kan make regne ud, hvilke filer, der skal behandles. Denne mekanisme kan spare meget tid når store programmer skal oversættes.
 
I sin enkleste form beskriver en Makefile, hvordan hver enkelt fil skal fremstilles og hvilke filer, den har afhængigheder til. En makefile til et [[Hello world-program]] kunne se sådan ud:
 
# Der bruges GNU-make
# Indbyggede variabler
CC = cc
CFLAGS = -O2 -Wall
LFLAGS =
# Lav som standard en programfil kaldet hello.
alt:
hello
# Programmet består an en objektfil, som skal linkes
hello: hello.o
$(CC) $(LFLAGS) -o hello hello.o
# Objektfilen laves på baggrund af en filerne hello.c og licens.h
hello.o: hello.c licens.h
$(CC) ${CFLAGS} -c -o hello.o hello.c
Kommentarer markeres med #. Variabler defineres med lighedstegn og bruges med syntaksen $(variabel). Hver opgave, der skal udføres har et navn, som skrives i starten af en linje og afsluttes med et kolon. Eventuelle filer, der skal være tilstede før opgaven kan udføres angives på samme linje. Kommandoerne, der skal udføres indledes med et tabuleringstegn.
 
De fleste varianter af make har indbyggede regler for programmer skrevet i C, så det er tilstrækkeligt at beskrive afhængighederne. Den konkrete udførelse af oversættelsen kan så styres med indbyggede variabler.
 
{{It-stub}}