对 makefile 中 $(MAKE) 的学习体会

简介:

上例子

主 Makefile内容:

SUBDIRS=foo bar baz
subdirs:
for dir in $(SUBDIRS); do\
$(MAKE) -C $$dir; \
done

当前目录下各个子目录的Makfile内容:

./foo/Makefile:

foo:   
    @echo "foo..."

./bar/Makefile:

bar:
    @echo "bar..."

./baz/Makefile:

baz:
    @echo "baz..."

执行结果:

for dir in foo bar baz;do\

  make -C $dir; \

done

make[1]:Entering directory '/soft/gao/test/foo'

foo...

make[1]:Leaving directory '/soft/gao/test/foo'

make[1]:Entering directory '/soft/gao/test/bar'

bar...

make[1]:Leaving directory '/soft/gao/test/bar'

make[1]:Entering directory '/soft/gao/test/baz'

baz...

make[1]:Leaving directory '/soft/gao/test/baz'






本文转自健哥的数据花园博客园博客,原文链接:http://www.cnblogs.com/gaojian/archive/2012/09/20/2695162.html,如需转载请自行联系原作者

目录
相关文章
|
8月前
|
Shell Linux C++
Makefile编译实战
Makefile编译实战
99 0
|
5月前
|
编译器 C语言
针对make工具和Makefile文件的学习心得
【8月更文挑战第24天】本文分享了关于 make 工具和 Makefile 文件的学习心得。make 工具与 Makefile 在软件开发特别是大型项目中扮演着重要角色,能自动化构建流程并提升开发效率。文章首先强调了了解 make 和 Makefile 重要性的必要性,并详细解析了 Makefile 的基本结构:包括目标、依赖和命令的定义;通过变量简化命令与依赖;以及伪目标的使用等。接着,文中介绍了几个关键的 Makefile 编写技巧:如何合理组织依赖关系,有效利用变量和宏,灵活运用自动变量,以及添加清晰的注释等。
|
5月前
|
编译器 Linux C语言
Makefile实战论(一)
Makefile实战论(一)
|
6月前
|
自然语言处理 Linux C++
make和Cmake都有什么区别?(内附使用详解)
make: 是一个构建工具,它的任务是读取 Makefile 文件,并基于这些文件中的指令执行具体的构建操作。Makefile 文件包含了如何构建项目的规则,make 负责解析这些规则并执行必要的命令来编译和链接源代码,生成可执行文件或库。 CMake: 是一个构建系统生成器。它并不直接进行编译或链接,而是根据项目中 CMakeLists.txt 文件的内容生成一个或多个构建系统的描述文件(如 Makefile 或 Visual Studio 解决方案)。CMake 提供了一种更高级、更抽象的方式来描述构建过程,这使得它能够跨平台地生成各种构建系统。
527 0
|
编译器 Shell Linux
Makefile学习1
Makefile学习1
|
Java Linux 程序员
玩转Makefile | 一文入门Makefile
玩转Makefile | 一文入门Makefile
247 0
玩转Makefile | 一文入门Makefile
|
C语言 Windows 开发工具
|
XML C++ 数据格式
Makefile的常用技术总结
一、MAKE中的自动变量:    $@: 表示target的名字    $%: 仅当目标是函数库文件中,表示规则中的目标成员名。例如,如果一个目标是"foo.a(bar.o)",那么,"$%"就是"bar.o","$@"就是 "foo.a"。    $
774 0

热门文章

最新文章