Linux: Um makefile Amostra

No Linux, você pode escrever uma makefile facilmente se você usar as variáveis ​​predefinidas do GNU faço e as suas regras internas. Considere-se, por exemplo, uma makefile que cria o executável xdraw a partir de três arquivos de origem C (xdraw.c, xviewobj.c, e shapes.c) e dois arquivos de cabeçalho (xdraw.h e shapes.h).

Suponha que cada arquivo-fonte inclui um dos arquivos de cabeçalho. Perante estes factos, é aqui que uma amostra makefile pode ser parecido com:

################################################## ######## makefile Amostra # Comentários começam com '#' ################################# ########################## Use variáveis ​​padrão para definir compilar e ligar flagsCFLAGS = -g -O2 # definir o alvo "todas" todos: xdrawOBJS = xdraw.o xviewobj.o shapes.oxdraw: $ (OBJS) # objeto filesxdraw.o: Makefile xdraw.c xdraw.hxviewobj.o: Makefile xviewobj.c xdraw.hshapes.o: Makefile shapes.c shapes.h

este makefile baseia-se no GNU faço'S regras implícitas. A conversão de .c arquivos para .o arquivos usa a regra embutido. Definindo a variável CFLAGS passa as bandeiras para o compilador C.

O alvo chamado todos é definido como o primeiro alvo por uma razão - se você executar GNU faço sem especificar todos os alvos na linha de comando, o comando constrói o primeiro alvo que encontra no makefile.

Ao definir o primeiro alvo todos Como xdraw, você pode garantir que faço constrói esse arquivo executável, mesmo se você não especificá-lo explicitamente como um alvo. programadores Unix utilizam tradicionalmente todos como o nome do primeiro alvo, mas o nome do alvo é immaterial- o que importa é que é o primeiro alvo na makefile.

menu