You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

52 lines
2.0 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

make
===
GNU的工程化编译工具
## 说明
**make命令** 是GNU的工程化编译工具用于编译众多相互关联的源代码问价以实现工程化的管理提高开发效率。
### 语法
```
make(选项)(参数)
```
```
-f指定“makefile”文件
-i忽略命令执行返回的出错信息
-s沉默模式在执行之前不输出相应的命令行信息
-r禁止使用build-in规则
-n非执行模式输出所有执行命令但并不执行
-t更新目标文件
-qmake操作将根据目标文件是否已经更新返回"0"或非"0"的状态信息;
-p输出所有宏定义和目标文件描述
-dDebug模式输出有关文件和检测时间的详细信息。
```
Linux下常用选项与Unix系统中稍有不同下面是不同的部分
```
-c dir在读取 makefile 之前改变到指定的目录dir
-I dir当包含其他 makefile文件时利用该选项指定搜索目录
-hhelp文挡显示所有的make选项
-w在处理 makefile 之前和之后,都显示工作目录。
```
### 参数
目标:指定编译目标。
### 知识扩展
无论是在linux 还是在Unix环境 中make都是一个非常重要的编译命令。不管是自己进行项目开发还是安装应用软件我们都经常要用到make或make install。利用make工具我们可以将大型的开发项目分解成为多个更易于管理的模块对于一个包括几百个源文件的应用程序使用make和 makefile工具就可以简洁明快地理顺各个源文件之间纷繁复杂的相互关系。
而且如此多的源文件如果每次都要键入gcc命令进行编译的话那对程序员 来说简直就是一场灾难。而make工具则可自动完成编译工作并且可以只对程序员在上次编译后修改过的部分进行编译。
因此有效的利用make和 makefile工具可以大大提高项目开发的效率。同时掌握make和makefile之后您也不会再面对着Linux下的应用软件手足无措了。