Ubuntu:deb控制文件没有构建依赖,它们来自哪里?

时间:2015-08-30 16:51:18

标签: ubuntu deb

我有一个deb文件,其控制文件不包含任何构建依赖行,但该程序包仍具有构建依赖性。那他们来自哪里?我无法弄清楚。

这是deb文件:http://download.opensuse.org/repositories/isv:/ownCloud:/desktop/xUbuntu_14.10/i386/owncloud-client_2.0.0-1_i386.deb 您可以看到控制文件只有Depends,没有build-depends。

但是     apt-rdepends --build-depends --follow = DEPENDS owncloud-client 显示构建依赖项:     owncloud客户端       Build-Depends:cmake       Build-Depends:debhelper(> = 9)       Build-Depends:kdelibs5-dev       Build-Depends:libneon27-gnutls-dev       Build-Depends:libocsync-dev(> = 0.91.4)       Build-Depends:libqt4-dev 等等。

另外     sudo apt-get build-dep owncloud-client 安装这些依赖项。

1 个答案:

答案 0 :(得分:1)

二进制包没有构建依赖关系(不再是),因为它已经构建完毕。源包肯定有它们;当您下载源包时,您会发现中的实际debian/control文件包含Build-Depends节。

典型的控制文件具有源包声明,后跟一个或多个二进制包声明。像这样:

Source: foo
Build-depends: libbar-dev, baz

Package: foo-server
Depends: libbar

Package: foo-client
Depends: python

因此,要构建foo-server和foo-client,需要foo源包和构建依赖项;但是生成的二进制包只是可交付成果,并且没有各自的构建依赖项。

http://ftp5.gwdg.de/pub/opensuse/repositories/isv:/ownCloud:/desktop/xUbuntu_14.10/Sources中的条目与http://ftp5.gwdg.de/pub/opensuse/repositories/isv:/ownCloud:/desktop/xUbuntu_14.10/Packages中的条目进行比较(这是我从.deb包链接重定向到的服务器)。