您是要修复软件包中的错误,还是只是想修改软件包以满足您的需求?Linux 已为您提供保障。
大多数 Linux 软件包都是免费和开源的,让您可以根据自己的喜好自由定制或修改任何软件。此外,您还可以自由查看 Linux 软件包的源代码,以从其他软件项目中学习良好的架构实践和编码模式。
让我们探索如何在 Linux 上从源代码编译和安装包。
Linux 为您提供了从源代码编译、构建和安装软件所需的所有必要工具。
大多数 Linux 软件是用 C 或 C++ 编程语言编写的,因此,您需要一个 C 或 C++ 编译器。例如,用于构建包的 GNU Compiler Collection (GCC) 和 CMake。
除此之外,您还需要其他包,例如 curl 和 gettext。根据您的 Linux 发行版,您可以在单个命令中安装所需的工具,如下所示。
在基于 Debian 的发行版上,例如 Ubuntu:
sudo apt install libz-dev libssl-dev libcurl4-gnutls-dev libexpat1-dev gettext cmake gcc curl
在 Arch Linux 及其衍生产品上:
sudo pacman -S base-devel
在基于 RPM 的发行版上,例如 Fedora、RHEL 等:
sudo dnf install dh-autoreconf curl-devel expat-devel gettext-devel openssl-devel perl-devel zlib-devel gcc curl cmake
对于本指南,我们将从源代码安装 Git 包。我们选择 Git 是因为它被软件工程师和开发人员广泛使用。
大多数可以编译的包都可以在相关包的官方网站上找到。您可以使用curl 命令行工具下载源代码文件。或者,您可以使用wget或 GUI。
将源代码下载到 PC 上的 Downloads 文件夹中,然后使用cd 命令切换到 Downloads 目录。
cd ~/Downloads
进入 Downloads 文件夹后,您可以使用 curl 下载 Git 源代码,如下所示。在本指南中,我们将下载 Git 版本 2.26.2,但您可以随意选择任何版本。
curl --output git.tar.gz https://mirrors.edge.kernel.org/pub/software/scm/git/git-2.26.2.tar.gz
curl 命令指定它应该将源代码放在一个名为git.tar.gz的压缩文件中。
下载:Linux 的 Git 源代码
在大多数情况下,源代码将打包在一个压缩文件夹中,以便于下载并更好地组织源代码文件。
要提取压缩文件的内容,您可以使用tar命令。
tar -zxf git.tar.gz
接下来,转到新提取的文件夹。在这种情况下,名称将是“git-2.26.2”,当然,如果您下载了不同版本的 Git,文件夹名称会有所不同。
cd git-2.26.2
查看README.md或INSTALL文件总是一个好主意,因为它们包含有关如何编译和安装包的宝贵信息。这些文件通常位于源代码的根文件夹中。
另一个重要的文件是配置脚本。它会检查您要编译的包的软件依赖项,如果脚本发现缺少依赖项,您将看到一条错误消息。
通过执行脚本来配置和准备源代码。该命令将为您将要编译和安装的软件创建make文件和配置。
./configure
现在源代码已配置和编译,您可以按如下方式构建软件:
make
make 命令使用 Makefile,其中包含有关如何构建软件包的必要说明。
编译过程将需要一些时间,具体取决于计算机的处理能力和包的大小。
如果您已经走到这一步,恭喜您,您已经成功地从源代码编译并构建了 Linux 软件。
在这最后一步中,您将安装刚刚从源代码构建的 Git 软件包。此命令通过将构建文件复制到 PC 上的正确位置来安装新编译的包。
sudo make install
使用以下命令检查您刚刚安装的 Git 版本:
git --version
输出应该与下面的类似。版本号可能因您下载的软件包而异。
本指南以 Git 作为研究案例,研究了如何在 Linux 上从源代码编译和构建软件。从源代码安装软件给了你很大的自由来定制你喜欢的软件,这是一件了不起的事情。
大多数 Linux 发行版在安装软件时为您提供了许多选项。例如,在 Arch Linux 上,您可以使用 Pacman 和 Yay 包管理器。
标签: 安装软件 Linux 应用程序