指定目标与Makefile:创意编译方法详解
需积分: 50 173 浏览量
更新于2024-08-10
收藏 964KB PDF 举报
指定目标-算法引论:一种创造性方法---高清版
本篇文章深入探讨了在Makefile编程中的指定目标功能,它是GNU Make工具的核心概念。通常,Makefile中的第一个目标是默认的构建目标,但用户可以根据需要指定其他的终极目标。指定目标的方法非常直观,只需在make命令后面加上目标名称即可,如`make clean`。
Makefile中的目标可以是任何在文件中定义的,即使没有明确定义,只要make能够通过隐含规则推导出该目标,它也可以成为指定目标。这使得make可以根据不同的目标执行相应的编译、链接或清理任务,提供了极大的灵活性。例如,`.PHONY`目标用于标记非实际存在的但对make有意义的指令,如`all`,它可以用来表示编译所有程序。
文章中还提到了`MAKECMDGOALS`环境变量,它记录了用户在命令行中指定的终极目标。如果没有显式指定,这个变量为空。利用这个变量,可以在特定条件下动态加载相关的Makefile片段。
编写Makefile时,规则、变量和伪目标都是关键要素。显式规则描述了如何从源文件生成目标文件,隐晦规则则用于自动化目标的推导。变量用于存储和替换信息,如编译选项或文件路径。文件指示用于指定输入和输出文件,注释则帮助理解代码意图。
此外,文章详细讲解了make的搜索机制、命令执行和错误处理,以及如何使用条件语句和函数来增强Makefile的逻辑性和复杂度。条件判断允许根据特定条件执行不同操作,函数则提供了强大的文本处理能力,如字符串替换、排序和提取等。
总而言之,指定目标是Makefile的强大特性,它允许开发者灵活控制构建流程,根据需要编译特定的部分或者执行多种任务。通过理解和熟练掌握这些技巧,开发者可以更高效地管理和组织他们的项目构建过程。
2656 浏览量
2018-08-20 上传
161 浏览量
177 浏览量
2012-12-01 上传
168 浏览量
半夏256
- 粉丝: 20
- 资源: 3827
最新资源
- scoop-bucket
- QuickFork:QuickFork允许您从git repo创建符号链接
- Urban Abodes Craigslist Posting-crx插件
- obdgpslogger-0.15.zip_GPS编程_Unix_Linux_
- afs42d-开源
- 人工智能学习课程练习.zip
- 参考资料-409.混凝土拌合用水质量检查报告.zip
- matlab心线代码-electrostatic-simulation-tools:我有效使用SIMION进行电子和离子光谱仪设计的工具(VM
- sysdigcloud-kubernetes:Kubernetes上的Sysdig Cloud
- 你好,世界
- opencv_test.rar_视频捕捉/采集_Visual_C++_
- familyline-server-test:测试服务器,提供有关Familyline网络协议的想法
- torch_sparse-0.6.10-cp39-cp39-win_amd64whl.zip
- matlab人脸检测框脸代码-ait-research-study-finished:我的研究的最终版本
- 人工智能经典算法Python实现.zip
- benjamingeets