Makefile 结构
来源:互联网 发布:湖南网络工程学院宿舍 编辑:程序博客网 时间:2024/05/29 19:07
一、基本介绍
一个工程中的源文件不计其数,其按类型、功能、模块分别放在若干个目录中,makefile定义了一系列的规则来指定,哪些文件需要先编译,哪些文件需要后编译,哪些文件需要重新编译,甚至于进行更复杂的功能操作,因为 makefile就像一个Shell脚本一样,其中也可以执行操作系统的命令。
所要完成的Makefile 文件描述了整个工程的编译、连接等规则。其中包括:工程中的哪些源文件需要编译以及如何编译、需要创建那些库文件以及如何创建这些库文件、如何最后产生我们想要的可执行文件。尽管看起来可能是很复杂的事情,但是为工程编写Makefile 的好处是能够使用一行命令来完成“自动化编译”,一旦提供一个正确的 Makefile。编译整个工程你所要做的唯一的一件事就是在shell 提示符下输入make命令。整个工程完全自动编译,极大提高了效率。
二、应用实例
helloworld:file1.o file2.o
gcc file1.o file2.o -o helloworld file1.o:file1.c file2.h
gcc -c -o file1.o file1.c file2.o:file2.c file2.h
gcc -c -o file2.o file2.c
一个 makefile 主要含有一系列的规则,如下:
目标文件:依赖文件
(tab)
(tab)
每个命令行前都必须有tab符号。
上面的makefile文件目的就是要编译一个helloworld的可执行文件。
helloworld : file1.o file2.o: helloworld依赖file1.o file2.o两个目标文件。
编译出helloworld可执行文件。-o表示你指定 的目标文件名。
file1.o : file1.c file2.h: file1.o依赖file1.c文件。 gcc -c file1.c -o file1.o:编译出file1.o文件。-c表示gcc 只把给它的文件编译成目标文件, 用源码文件的文件名命名但把其后缀由“.c”或“.cc”变成“.o”。在这句中,可以省略-o file1.o,编译器默认生成file1.o文件,这就是-c的作用。
- Makefile结构
- makefile结构
- Makefile 结构
- Makefile基本结构
- Android makefile 组织结构
- Android makefile 组织结构
- Android makefile 组织结构
- Android makefile 组织结构
- Makefile基本结构
- Contiki Makefile结构
- Makefile基本结构
- 简单目录结构Makefile
- makefile之一:基本结构
- makefile分层目录结构
- Contiki Makefile结构
- Docker Makefile文件结构
- 初识makefile的结构
- makefile基本结构
- 2017.10.14
- 网页爬虫--scrapy进阶
- 【JavaEE学习笔记】XML_概述,DOM4J解析器,Pull解析器,DOM4J增删改,xPath
- 数组相关知识
- 201710142150->利用www类完成网页get请求
- Makefile 结构
- Kattis
- Java 注解
- 单例模式
- 如何解决error: failed to push some refs to 'xxx(远程库)'
- Random类以及Random种子
- 【视频开发】视频质量诊断----概述
- 计划
- 16道嵌入式C语言面试题(经典)