如何解决依赖关系,同时在Ubuntu上编译软件

Linux上编译软件最难的部分是定位其依赖项并安装它们。 Ubuntu有apt命令可以自动检测,定位和安装依赖项,为您做艰苦的工作。

我们最近在Ubuntu上介绍了从源代码编译软件的基础知识,因此,如果你刚刚开始,请查看我们的原始文章。

自动应用

Auto-apt在通过它运行./configure命令时监视并等待。 当./configure尝试访问不存在的文件时,auto-apt将./configure进程置于保持状态,安装相应的包,并让./configure进程继续。

首先,使用以下命令安装auto-apt:

sudo apt-get install auto-apt

安装后,运行以下命令以下载auto-apt需要的文件列表。 此过程将需要几分钟。

sudo自动更新

第一个命令完成后,运行以下命令更新其数据库。 这些命令也需要几分钟。

sudo auto-apt updatedb && sudo auto-apt update-local

在您构建完auto-apt的数据库之后,您可以使用以下命令启动./configure过程:

sudo auto-apt运行./configure

Apt-File

如果您看到某个特定文件丢失的错误消息,您可能不知道您要安装的包以获取该文件。 Apt-file允许您使用单个命令查找包含特定文件的包。

首先,你必须安装apt-file本身:

sudo apt-get install apt-file

安装后,运行以下命令从配置的apt存储库下载文件列表。 这些是大型列表,因此下载它们需要几分钟。

sudo apt-file update

运行以下命令,将“ example.pc ”替换为文件名,该命令将告诉您您需要安装哪个软件包:

apt-file搜索文件example.pc

使用标准apt-get install命令安装软件包:

sudo apt-get安装包

您还可以从Ubuntu Package Search网站执行文件搜索。 使用页面上的“ 搜索软件包的内容 ”部分搜索特定文件。

它会给你和apt-file一样的结果,你不必下载任何文件列表。

Apt-Get Build-Dep

我们在最初的帖子中介绍apt-get build-dep。 如果你试图安装的程序的早期版本已经在Ubuntu的软件包存储库,Ubuntu已经知道它需要的依赖。

键入以下命令,将“ package ”替换为packge的名称,apt-get将安装所需的依赖关系:

sudo apt-get build-dep包

Apt-get将提示您安装所有必需的依赖项。

如果程序的较新版本需要不同的依赖关系,则可能需要手动安装一些其他依赖关系。


所有这些命令使用apt-get,所以你也可以在Debian,Linux Mint和任何其他使用apt-get和.deb包的Linux发行版。

赞 (0)
分享到:更多 ()