【经验分享】linux 下使用 Makefile 快速构建单工程教程

欢迎关注我的公众号 [极智视界],回复001获取Google编程规范

O_o>_<o_OO_o~_~o_O

  大家好,我是极智视界,本教程详细介绍了在 linux 下使用 Makefile 快速构建单工程的方法。

  本文的亮点是快速构建工程,所以不会长篇大论 Makefile 语法。

  直接开始,假设有一个测试 cpp: test.cpp,然后它可能会有一些依赖,如 opencv、cuda 等等,现在给出一个 Makefile,通过简单的配置就能把你的 test 可执行程序编译出来,进行快速的测试验证工作。

## Makefile

CXX = g++

CXX_FLAGS += -std=c++14
CXX_FLAGS += -Wl,-rpath-link

INCLUDES += -I../xxxx/include                                           # 头路径
INCLUDES += -I../xxx/xxx/include

LINKS += -L../xxx/lib                                                   # 库路径
LINKS += -L../xxx/xxx/lib                                               

LIBS += -lcuda -lcurt -pthread                                          # 添加一些依赖库
LIBS += -lopencv_imgproc -lopencv_imgcodecs -lopencv_core -lopencv_dnn


# For debug build, use the command: `make debug=1' 
ifeq ($(debug), 1)                                                      # debug 模式  
      CXX_FLAGS += -DDEBUG -g              
endif

SRCS = test.cc
EXECUTABLE = test

$(EXECUTABLE): $(SRCS)                                                 # 编译指令
    $(CXX) $(SRCS) $(CXX_FLAGS) $(INCLUDES) $(LINKS) $(LIBS) -o $(EXECUTABLE)

clean:                                                                 # make clean
    rm -f $(EXECUTABLE)

  目录树如下,也就是把俩文件放同一目录下就行:

- Makefile
- test.cpp

  执行编译:

make

  如果需要 debug 的话,可以这样编译:

make debug=1

  完了就会生成 test 可执行程序了,十分快速及简单。


  以上分享了在 linux 下使用 Makefile 快速构建单工程的方法,希望我的分享会对你的学习有一点帮助。

【公众号传送】
【经验分享】linux 下使用 Makefile 快速构建单工程教程

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容