【经验分享】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 快速构建单工程教程

猜你喜欢

转载自juejin.im/post/7036639437375160333