2013-03-12 32 views
-1

看着我朋友的Makefile,我注意到他使用了install shell命令。从我所知道的,该命令允许你一举安装和文件。这个命令出现在我们后来的对话中,他说他听说过这个命令被认为有些过时,开发者应该使用cp,mv,chmod等等来代替现代项目。为什么开发者不使用`install`命令?

奇怪的是,这是我唯一遇到的命令。这使我相信命令确实被拒绝了,因此被遗忘了。这是真的?该计划是否存在某种安全缺陷?从我的观点可能幼稚点,使用单个命令总是比使用由automake产生仍然使用它的许多命令

回答

1

我怀疑的答案是,install命令是非常脚本和生成文件(如automake makefile文件是@Jack凯利介绍),而且几乎从来没有交互使用。因此,人们很少看到它“超过某人的肩膀”,而且它不在意识之中。

然而,正如你所说,几乎恰恰是这份工作的正确工具。问题是它不是POSIX command,所以最好不要使用任何非常奇特的选项。如果配置脚本没有确信本地版本足够兼容,则在automake makefile中使用的版本由分布式shell脚本补充。

查看autoconf manual's discussion of portable shell scripting,了解关于此一般主题的一些实用提示。

0

生成文件更好,由线(或类似)所证明:

checking for a BSD-compatible install... /usr/bin/install -c 

输出为configure