Makefile编译指南:关键字解释和实践
需积分: 13 48 浏览量
更新于2024-09-13
收藏 58KB DOC 举报
"makefile学习笔记"
makefile是 UNIX 系统中的一种自动编译工具,通过编写makefile文件可以自动地编译、链接和构建项目。下面是makefile学习笔记的知识点总结。
一、makefile基本概念
makefile是一个文本文件,用于描述如何编译和构建项目。makefile文件中包含了一系列的规则,每条规则都指定了如何编译和链接目标文件。makefile文件可以包含变量、依赖关系和命令等元素。
二、makefile关键字解释
1. CC_CMD:makefile中的CC_CMD变量用于指定编译器的命令,例如CC_CMD = -fpic -c。这里的-fpic选项告诉编译器生成位置独立代码(position-independent code),-c选项告诉编译器生成对象文件。
2. INCLUDES:INCLUDES变量用于指定头文件的路径,例如INCLUDES = -I../Include\ -Iinc。这里的-I选项告诉编译器查找头文件的路径。
3. CCFLAGS:CCFLAGS变量用于指定编译器的选项,例如CCFLAGS = $(CC_CMD) $(APP_DEF) $(APP_INC)。这里的-D选项用于定义宏,-I选项用于指定头文件的路径。
三、makefile实践
1. 编译共享库:使用gcc命令可以编译生成共享库,例如gcc -shared first.o second.o -o hello.so。这里的-shared选项告诉编译器生成共享库,-o选项指定输出文件的名称。
2. 使用dir命令:dir命令用于查看目录、文件权限等详细信息。例如,dir命令可以用来查看当前目录下所有文件的详细信息。
四、makefile变量
1. APP_INC:APP_INC变量用于指定头文件的路径,例如APP_INC = -I../Include\ -Iinc。
2. ARFLAGS:ARFLAGS变量用于指定归档器的选项,例如ARFLAGS = -r $(OUTDIR)/$(TARGET).$(EXETYPE)。这里的-r选项告诉归档器生成目标文件。
五、makefile的应用
makefile广泛应用于嵌入式系统、编译器开发、自动化构建等领域。通过编写makefile文件,可以自动地编译、链接和构建项目,提高开发效率和项目质量。
六、makefile的优点
1. 自动化构建:makefile可以自动地编译、链接和构建项目,提高开发效率。
2. 可重用性:makefile可以在不同的项目中重用,减少开发时间和成本。
3. 灵活性:makefile可以根据项目的需要进行灵活地配置和修改。
makefile是一个非常有用的自动编译工具,通过编写makefile文件,可以自动地编译、链接和构建项目,提高开发效率和项目质量。
2021-09-10 上传
2022-08-08 上传
2009-05-08 上传
2017-03-28 上传
2011-07-28 上传
2021-01-09 上传
2022-04-24 上传
2009-12-16 上传
yuanfang_2009wu
- 粉丝: 0
- 资源: 3
最新资源
- python大数据等汇总.zip
- datastructures_algorithms
- Programs.rar_数学计算_C/C++_
- AlphaTrack PRO-开源
- canvas-sketch-render-service:基于HyperDrive的HyperSource服务,可将Canvas Sketch项目转换为生产包
- Magento-Import-Export:该脚本将导出和导入属性,集和产品
- 人工智能实验 个人作业.zip
- VedioSave.rar_视频捕捉/采集_Visual_C++_
- 5个电子字符
- Voldemort271.github.io:..
- 人工智能学习.zip
- cds-file-upload-frontend
- VB三角形动画窗体
- OpenCV.zip_Windows_CE_Visual_C++_
- parks_and_ride_project
- pythonTOexcel.zip