Makefile入门六连击

 

Makefile入门六连击_第1张图片Makefile入门六连击_第2张图片

Makefile入门六连击_第3张图片

 

1

app:add.o sub.o main.o mul.o
	gcc add.o sub.o main.o mul.o -o app

add.o:add.c
	gcc -c add.c -o add.o
sub.o:sub.c
	gcc -c sub.c -o sub.o
main.o:main.c
	gcc -c main.c -o main.o
mul.o:mul.c

2

 

app:add.o sub.o main.o
	gcc add.o sub.o main.o -o app

all:app


add.o:add.c
	gcc -c add.c -o add.o
sub.o:sub.c
	gcc -c sub.c -o sub.o
main.o:main.c
	gcc -c main.c -o main.o

clean:
	@echo "clean object:"
	-rm -rf *.o app

src = add.c sub.c main.c 
obj = add.o sub.o main.o

app:$(obj)
	gcc $^ -o $@

all:app

add.o:add.c
	gcc -c $< -o $@
sub.o:sub.c
	gcc -c $< -o $@
main.o:main.c
	gcc -c $< -o $@

clean:
	@echo "clean object:"
	-rm -rf $(obj) app

4

#src = add.c sub.c main.c 
#obj = add.o sub.o main.o

src = $(wildcard ./*.c)
obj = $(patsubst %.c, %.o, $(src))

app:$(obj)
	gcc $^ -o $@

all:app

add.o:add.c
	gcc -c $< -o $@
sub.o:sub.c
	gcc -c $< -o $@
main.o:main.c
	gcc -c $< -o $@

clean:
	@echo "clean object:"
	-rm -rf $(obj) app

5

src = $(wildcard ./*.c)
obj = $(patsubst %.c, %.o, $(src))

app:$(obj)
	gcc $^ -o $@

all:app

%.o:%.c
	gcc -c $< -o $@

#add.o:add.c
#	gcc -c $< -o $@
#sub.o:sub.c
#	gcc -c $< -o $@
#main.o:main.c
#	gcc -c $< -o $@

clean:
	@echo "clean object:"
	-rm -rf $(obj) app

6

src = $(wildcard ./*.c)
obj = $(patsubst %.c, %.o, $(src))

CC = gcc
CFLAGS = -Wall -g
myflags = -lm

all:app

app:$(obj)
	$(CC) $^ -o $@ $(CFLAGS) $(myflags)

%.o:%.c
	$(CC) -c $< -o $@ $(CFLAGS)

clean:
	@echo "clean object:"
	-rm -rf $(obj) app

.PHONY:clean all

 

 

你可能感兴趣的:(makefile,linux)