一个很典型的Linux C/C++的makefile写法,其它的应用可根据此template修改。
(注意每一行的前面若有空格,是tab,不是space)
1
#Source file
2
3
SRC = ThreadQueue.cpp
4
#Object file
5
OBJ = $(SRC:.cpp=.o)
6
7
#Output execution file
8
PROGRAM = ThreadQueue
9
10
#Compiler
11
CC = g++
12
13
#Include
14
15
INCLUDE = -I/usr/include/ncurses -I/usr/include/
16
#Linker Parameter
17
LINKPARAM = -lpthread -lncurses
18
#Options for development
19
20
#CFLAGS = -ansi -g -Wall
21
#Options for release
22
23
CFLAGS = -ansi -O -Wall
24
25
26
27
all: $(PROGRAM)
28
29
30
31
$(PROGRAM): $(OBJ)
32
33
$(CC) -o $(PROGRAM) $(LINKPARAM) $(OBJ)
34
35
.SUFFIXES : .cpp
36
37
38
39
.cpp.o:
40
41
$(CC) $(INCLUDE) $(CFLAGS) -c $<
42
43
44
45
clean:
46
47
-rm *.o
48
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48