makefile文件的不同写法

 memo
 
  • 封装so库时的写法
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
CC=gcc

SRCS=mylib.c

OBJS=$(SRCS:.c=.o)

EXEC=libmylib.so

start: $(OBJS)
$(CC) -o $(EXEC) $(OBJS) -shared

.c.o:
$(CC) -o $@ -c $< -fPIC

clean:
rm -rf $(OBJS)
  • C/C++混合编程的写法
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
CC=g++

SRCS=main.cpp\
udp.cpp

OBJS=$(SRCS:.cpp=.o)

EXEC=myudp

start: $(OBJS)
$(CC) -o $(EXEC) $(OBJS)

.cpp.o:
$(CC) -o $@ -c $< -DMYLINUX

clean:
rm -rf $(OBJS)