不幸的是,debhelper 具有递归依赖性。
当我尝试安装时apt-get source --compile debhelper
,它说:
Reading package lists... Done
Building dependency tree
Reading state information... Done
NOTICE: 'debootstrap' packaging is maintained in the 'Git' version control system at:
git://anonscm.debian.org/d-i/debootstrap.git
Skipping already downloaded file 'debootstrap_1.0.59ubuntu0.2.dsc'
Skipping already downloaded file 'debootstrap_1.0.59ubuntu0.2.tar.xz'
Need to get 0 B of source archives.
Skipping unpack of already unpacked source in debootstrap-1.0.59ubuntu0.2
dpkg-buildpackage: source package debootstrap
dpkg-buildpackage: source version 1.0.59ubuntu0.2
dpkg-buildpackage: source distribution trusty
dpkg-buildpackage: source changed by Adam Conrad <[email protected]>
dpkg-buildpackage: host architecture amd64
dpkg-source --before-build debootstrap-1.0.59ubuntu0.2
dpkg-checkbuilddeps: Unmet build dependencies: debhelper (>= 9)
dpkg-buildpackage: warning: build dependencies/conflicts unsatisfied; aborting
dpkg-buildpackage: warning: (Use -d flag to override.)
Build command 'cd debootstrap-1.0.59ubuntu0.2 && dpkg-buildpackage -b -uc' failed.
E: Child process failed
然后当我这样做时apt-get source --compile po4a
,它说:
Reading package lists... Done
Building dependency tree
Reading state information... Done
NOTICE: 'po4a' packaging is maintained in the 'Svn' version control system at:
svn://svn.debian.org/svn/po4a/trunk
Skipping already downloaded file 'po4a_0.45-1.dsc'
Skipping already downloaded file 'po4a_0.45.orig.tar.gz'
Skipping already downloaded file 'po4a_0.45-1.debian.tar.gz'
Need to get 0 B of source archives.
Skipping unpack of already unpacked source in po4a-0.45
dpkg-buildpackage: source package po4a
dpkg-buildpackage: source version 0.45-1
dpkg-buildpackage: source distribution unstable
dpkg-buildpackage: source changed by Denis Barbier <[email protected]>
dpkg-buildpackage: host architecture amd64
dpkg-source --before-build po4a-0.45
dpkg-checkbuilddeps: Unmet build dependencies: debhelper (>= 8) docbook-xml docbook-xsl xsltproc libterm-readkey-perl libunicode-linebreak-perl sp docbook libsgmls-perl texlive-binaries
dpkg-buildpackage: warning: build dependencies/conflicts unsatisfied; aborting
dpkg-buildpackage: warning: (Use -d flag to override.)
Build command 'cd po4a-0.45 && dpkg-buildpackage -b -uc' failed.
E: Child process failed
我可以编译除 debhelper 之外的所有其他包,因为它需要 po4a,而 po4a 又需要 debhelper,依此类推。
编辑:顺便说一句,我有不须藤使用权。
答案1
debhelper
可以在没有 NLS 的情况下构建,这不需要po4a
;看https://bugs.debian.org/709557了解详情。一旦你有了 的源代码debhelper
,你就可以运行
USE_NLS=no dpkg-buildpackage -d -b -uc
获得可安装的.deb
,然后您可以使用它来构建po4a
,然后debhelper
使用 NLS 重新构建。
请注意,这debhelper
是一个Architecture: all
包,因此不需要为新架构重新构建它,因此不会在引导努力。