美文网首页
Makefile小模板

Makefile小模板

作者: 偷风筝的人_ | 来源:发表于2017-11-02 21:08 被阅读0次

    windows程序员请绕路。

    刚学Linux的时候,接触到Makefile这种东西,根本不知道是什么东西。虽然现在也不是很懂,只会基本的编写规则。那些什么目标文件,依赖文件,链接,编译规则就不说了,懂的自然懂,不懂的自行百度。这里只提供一个模板,自己在一个小模块中所使用中。

    CC := gcc #编译器

    CFLAGS := -g3 -O1 -Wall

    #-g3:表示可用gdb调试,-O1:表示编译时1级优化, -Wall:输出错误或警告

    TARGET = APP #生成的目标文件

    LDFLAGS += -lpthread #链接线程库LDFLAGS += -lxxx -lxxx-a #链接xxx 和 xxx-a 库

    LDFLAGS += -L../libs -lAAAAAA #链接静态库 ../libs/libAAAAAA

    LDFLAGS += `pkg-config --libs glib-2.0` #使用glib库

    LDFLAGS += -L../libs -lBBBBBB #链接静态库 ../libs/libBBBBBB

    SRCS := $(wildcard ./*.c)

    SRCS += $(wildcard ./dir1/*.c)

    SRCS += $(wildcard ./dir2/*.c)

    SRCS += $(wildcard ./dir3/*.c)

    SRCS += $(wildcard ./.../*.c)

    SRCS += $(wildcard ./dirN/*.c)

    OBJS := $(patsubst %.c, %.o, $(SRCS))

    all: $(TARGET)

    $(TARGET): $(OBJS)

    $(CC) $^ $(LDFLAGS) -o $@

    @-rm -f $(OBJS) core*

    $(OBJS): %.o: %.c

    $(CC) $(CFLAGS) -c $< -o $@

    .PHONY: clean

    clean: -rm -f $(OBJS) $(TARGET) core*

    Makefile小模板

    相关文章

      网友评论

          本文标题:Makefile小模板

          本文链接:https://www.haomeiwen.com/subject/onrapxtx.html