在.deb 包的控制文件中哪里可以找到类似的依赖信息?

在.deb 包的控制文件中哪里可以找到类似的依赖信息?

据我所知,.deb软件包通常包含一个控制文件,以libfreetype6_2.3.9-5ubuntu0.4_i386.deb为例,其控制文件包含以下内容:


软件包:libfreetype6

来源:freetype

版本:2.3.9-5ubuntu0.4

架构:i386

维护者:Ubuntu 核心开发人员

安装大小:704

依赖:libc6 (>= 2.4)、zlib1g (>= 1:1.1.4)

冲突:freetype、xpdf-reader(<< 1.00-4)

部分:libs

...


问题 1:

我想知道如何找到类似“依赖:libc6 (>= 2.4)、zlib1g (>= 1:1.1.4)“我自己。从配置文件、Makefile、README 还是其他什么东西?

问题2:

有没有自动生成控制文件的工具?

非常感谢您的回答。

答案1

假设其书写正确,这些信息将由 进行检查configure,但要获得可靠的列表通常需要转到该项目的主页、README 等,并阅读那里的文档。即使是文档记录最差的项目也往往会在某处列出这些信息。如果找不到它,您可以尝试编译它并出现错误,然后追踪失败的原因(即缺少标题、库等)。

如果您尝试构建自己的 .deb 包,并希望找到类似 RPM 之类的自动依赖解析功能,那么您就没那么幸运了。也许有第三方解决方案,但我不会依赖它们。

虽然您最初的问题有点晦涩难懂,但您的评论听起来像是您自己尝试编译(并运行)应用程序。如果是这种情况,您可以使用以下命令下载与二进制包相关的所有构建源,这样您就可以轻而易举地从源代码编译程序。

apt-get build-dep <package_name>

现在,编译你的包就像运行configure和一样简单make

安德鲁

答案2

Dpkg 是一个简单的软件包安装,它不解决依赖关系。您是否尝试通过 apt-get -f install package_name 安装软件包?

正是由于依赖关系,apt dselect 和 aptitude ware 才发展起来的。

呼呼!

相关内容