首页 Makefile 说明
文章
取消

Makefile 说明

1. 概述

makefile文件描述了人C/C++工程的编译规则,它根据我们事先写好的MakeFile文件,自动化编译C/C++项目。 一个大型项目的源文件可能多达千个,他们按照功能模板类型 分别放在不同目录中,通过Makefile 定义了一些列规则, 指明了源文件的编译顺序依赖关系、是否需要重新编译

1.1 为什么要用Makefile

通常我们在开发c/c++程序的过程中,需要将多个源文件编译为一个文件时:

1
 gcc -o main main.c tools.c file.c ...

如果源文件数量不是很多的话,我们还可以选择这种方式进行编译。如果文件非常多的话,就会遇到一下问题:

  • tools.c 中使用了数学计算库 math 中的函数,我们就得手动添加参数 -lmath;
  • file.c 中使用了SQLite中的函数,我们需要手动添加参数 -lsqlite3
  • main.c 中使用到了线程,我们需要手动去添加参数 lpthread

    1.1.1 编译的时候需要链接库的问题:

参考

本文由作者按照 CC BY 4.0 进行授权