linux下makefile(通用模板)

来源:互联网 发布:网络媒介的特点 编辑:程序博客网 时间:2024/06/05 01:37

linux编译多个源文件的程序比较麻烦,这下就需要通用的Makefile了,编译的时候执行一下make命令就OK,下面介绍通用makfile的写法。 

# 头文件路径,可以任意指定头文件

PREFIX=/usr/local
BINDIR=$(PREFIX)/bin

# 链接库

LINKPARAM = -lpthread

# object文件

PROGRAM=stFtpClient

# 编译器
CC=gcc

# 编译选项(-ansi -g -Wall)
CFLAGS=

COMPILE=$(CC)$(CFLAGS) -c
LINK=$(CC)$(CFLAGS)

all:$(PROGRAM)

# 定义目标文件生成规则

$(PROGRAM):main.o stFtpClient.o
        $(LINK) main.o stFtpClient.o -o $(PROGRAM)


main.o:main.c
        $(COMPILE) main.c
stFtpClient.o:stFtpClient.c
       $(COMPILE) stFtpClient.c
 
unistall:
      cd $(BINDIR) && if[ -f "./$(PROGRAM)"];then rm $(PROGRAM);fi


install:
       cp -f $(PROGRAM) $(BIRDIR)

# 定义清理函数
clean:
        rm -rf *.o $(PROGRAM)