电脑技术学习

对话 UNIX,第 12 部分: 自己动手完成项目

dn001

  然而,也可能存在这样的情况,即您所需要的软件是可获得的,但它却不包含于任何存储库中。由于包管理方式具有显著的优势,所以大多数软件都提供了可以使用包管理器进行下载并安装的形式。然而,因为 Unix 的版本和风格非常之多,所以很难针对每种特定的变体,以各种包管理器的格式提供每个应用程序。如果您的 UNIX 安装是主流的,并受到大量拥护者的喜爱,那么您将更有可能找到预先构建的并且可供使用的软件。否则,您就需要挽起袖子准备自己动手构建软件了。

  是的,年轻的绝地武士(《星球大战》中的武士),是使用源代码的时候了。

  如同从沼泽中升起一架 X 翼战斗机一样,从源代码构建软件乍看起来可能是令人生畏的,特别当您不是软件开发人员的时候。事实上,在大多数情况下,整个构建过程仅仅只需要少数几条命令,其余的工作都是自动完成的。

  当然,某些程序构建起来是非常复杂的(或者需要花费数小时来进行构建),并且在构建过程中需要进行人工介入。然而,即使这些程序通常是由一些容易构建的较小的块构造而得到的,依赖关系的数量和构造的顺序也会使构建过程变得复杂。一些程序还有许多您并不一定希望拥有的特性。例如,您可以构建 PHP,以便与新的网际协议版本 6 (IPv6) Internet 寻址方案进行互操作。如果您的网络尚未采用 IPv6,则不需要包括这个特性。对大量选项进行的审查将使构建过程变得更加麻烦。

  这个月,让我们来研究如何构建一个典型的 UNIX 软件应用程序。在继续学习后面的内容之前,请确保系统中安装了 C 编译器,如 GNU 编译器套装(GNU Compiler Collection,GCC),以及常见的 UNIX 软件开发工具套装,包括 make、m4、pkg-config 和 awk。此外,请确保在您的 PATH 环境变量中包含了所有的开发工具。

标签: