不同的“make”命令之间有什么区别?

不同的“make”命令之间有什么区别?

因此,在不同应用程序的源代码上运行configure文件后,输入makemake install安装应用程序。我的问题是make和之间有什么区别make install

答案1

make寻找第一的Makefile 中的目标。(GNU Make 允许对此进行配置。)

make install寻找名为“ install”的目标。

答案2

Make install 是 Makefile 中各种可能的目标之一。举一个简单的例子,另一个非常常见的目标就是 clean:make clean 通常清除临时文件,这些临时文件是编译过程中必需/有用的副产品,但在生成最终可执行文件后就不再需要了。

Make install 包含将编译产品插入系统的指令,例如通过运行负责模块安装的必要的 depmod 命令。

那为什么必须同时运行两者呢?!

因为第一个可以以普通用户身份执行,所以第二个通常需要系统权限。

如果您的下一个问题是:那么为什么不以 sudo 身份运行两者,那么答案是并非所有安装都将在系统范围内使用。例如,如果您在有权访问的系统上没有 root 权限,您可能希望编译和安装给定的软件包以供自己专用。在这种情况下,您希望能够编译它并将其传递给链接器,但您无法安装它以供所有系统用户使用。在这种情况下,差异的原因是显而易见的。

换句话说,安装过程的每个阶段都经过组织,以便能够以最低的权限执行,只要有意义,就可以进行系统范围和本地安装。

相关内容