我在子目录中只有几个文件,所有文件都是文本文件,如常见问题解答,用户指南,其中没有c / cpp src代码。以下是文件和目录结构。
scr
|_Makefile #Top level Makefile
|_other_dirs
|_some_other_dirs
|_mydir
|_Makefile #Makefile of mydir, need to put some code here
|_dir1
| |_textfile0
| |_textfile1
|_dir2
|_textfile2
|_textfile3
问题,如何将dir1和dir2的内容压缩成一个tar球?我尝试在Internet上搜索Makefile以及如何使用它从最上层的Makefile创建接球,但没有成功。我对Makefiles不太熟悉,任何起点都将不胜感激。谢谢。
以下是我的新手尝试使用的非常基本的Makefile:
-->cat Makefile
mydir.tgz : *
tar -zcvf mydir.tgz mydir/
-->make
Makefile:1: *** missing separator. Stop.
想法是运行顶层Makefile并为mydir生成tar文件。
您可以mydir
递归添加所有文件和目录,作为的先决条件mydir.tgz
。这样,只有在下的某个位置发生更改时,才会执行tar文件mydir
。例如这样:
mydir.tgz: $(shell find mydir)
tar -zcvf mydir.tgz mydir
带有tar
命令的行应以开头TAB
。
该SO问题中也描述了此答案的大多数机制,但对我来说在此处添加它以简洁地回答您的特定问题似乎很有意义。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句