gpt4 book ai didi

makefile - 制作、安装、执行程序

转载 作者:行者123 更新时间:2023-12-01 10:52:53 28 4
gpt4 key购买 nike

我学习 CS 有一段时间了,似乎我(或我的许多 friend )从来不了解在制作、安装等方面幕后发生的事情。

纠正我,但是 make 是一种编译一组文件的方法吗?

在 Windows 上“将程序安装到计算机”是什么意思,因为当我使用不同的语言(如 java 或 perl)进行编码时,我们不会安装我们编写的内容。我们会编译(如果没有,解释语言)并运行它。那么,为什么需要“安装”Skype 等程序呢?

谁能澄清一下?我觉得这是我作为程序员需要知道的事情。

最佳答案

Make 是一个构建系统

Make 是一个 build system这只是一种编写编译程序所需步骤的脚本的方法。 Make 特别适用于任何东西,但通常用于编译 C 或 C++ 程序。它简化并创建了一种标准方法,供程序员编写程序编写脚本,以便轻松构建和安装

为什么要构建系统

你看,如果你的程序是一个简单的单源文件程序,那么使用 make 可能有点矫枉过正,因为编译最简单的 c 程序就像这样简单

gcc simpleprogram.c -o simpleprogram.out

但是,随着软件规模的增长,它的复杂性也在增加,构建软件的复杂性也在增加。例如,您可能想确定每个库的版本安装在您正在编译的计算机上,您可能想在编译程序后运行一些测试以确定它是否正常工作,或者您可能想自动下载一些您的程序具有的依赖项。

大多数构建的软件最终都需要这些任务的混合体。因此,他们没有重新发明轮子,而是使用允许编写脚本的构建系统。如果您熟悉 Java(您提到过),那么构建系统可与 make 相媲美,但在 Java 世界中使用的是 Apache Ant .

为什么要安装

好吧,假设您使用了“make”命令而不是“make install”。 “make”命令通常用于准备编译程序,然后编译它。然而,一旦你的程序被编译,你所拥有的只是一个可执行文件,位于你编译程序的目录中。程序、它的文档和它的配置文件没有放在所有用户需要的适当目录中使用它。这就是“make install”的目的。 Make install 获取与您刚刚编译的程序相关的所有文件,并将这些文件放在适当的目录中,以便每个人都可以使用它,并且每个组件都位于您的操作系统所期望的目录中。

关于makefile - 制作、安装、执行程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17016277/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com