乐趣区

关于c++:经验分享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 疾速构建单工程教程》

退出移动版