think - edit - make - test ...Makefile �̋L�q�@
�\�z���@�̑O�ɂ�[TAB]��u���B(space�ł͂���) �܂�Ȃ� Makefile�̗�target ...: [�ˑ��W(file)] [�\�z���@(command)] ....
C�v���O�������R���p�C�����邽�߂� Makefile�̗�testfile: ls testfile touch testfile ls testfile
�^�[�Q�b�g�쐬�ɕK�v�ȃt�@�C����ʂ̃^�[�Q�b�g�Ƃ��� �������Ƃ��ł���B# Makefile example go: go.c cc -o go go.c
���ۂ̃v���O�����ł͕����� C �\�[�X�t�@�C�������� ���s�t�@�C�����쐬���邱�Ƃ������B# Makefile example batch: a b cat a b > batch b: echo "b" > b a: echo "a" > a c: echo "ccc"
main.c �܂��� data.c �̂ǂ��炩�ɕύX���������ꍇ�ɂ́A �Ή����� .o �t�@�C�����R���p�C���ɂ���č���Aprogram �� main.o �� data.o ���������č����B �Ō�̂Q�̃^�[�Q�b�g�͒��ԃt�@�C���Ǝ��s�t�@�C���� �폜�ɗp������B# Makefile example program: main.o data.o cc -o program main.o data.o main.o: main.c cc -c main.c data.o: data.c cc -c data.c clean: rm program main.o data.o
�Öق̃��[���̗��p
COMPILE.c=$(CC) $(CFLAGS) $(CPPFLAGS) $(TARGET_ARCH) -c LINK.c=$(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) $(TARGET_ARCH)
# Makefile example CC=gcc CFLAGS=-O LDFLAGS=-lm objs=main.o data.o program: $(objs) $(CC) $(LDFLAGS) -o program $(objs) main.o: main.c program.h data.o: data.c program.h clean: rm program $(objs)