当需要将任何依赖项从Backports或Testing转换为版本时,很难通过Testing来创建私有Debian backport软件包

时间:2019-04-03 03:35:51

标签: debian apt-get backport

我需要在Debian Stable(Stretch)安装上安装一个软件包,但是不幸的是,该软件包的Stable版本太旧,无法支持我的硬件。此外,没有Backports(拉伸)版本。因此,我试图从Debian Testing(Buster)软件包中构建一个私有的backport版本。我想知道...当依赖项需要Backports甚至是Testing中的软件包版本时,有没有一种方法(最好是简单的)来处理依赖项?

我尝试遵循https://wiki.debian.org/SimpleBackportCreation上的过程,但是在尝试使用mk-build-deps --install --remove时遇到了依赖版本要求方面的困难。例如:

$ sudo mk_build_deps --install --remove
dh_testdir
dh_testroot
dh_prep
dh_testdir
dh_testroot
dh_install
dh_install: Compatibility levels before 9 are deprecated (level 7 in use)
dh_installdocs
dh_installdocs: Compatibility levels before 9 are deprecated (level 7 in use)
dh_installchangelogs
dh_installchangelogs: Compatibility levels before 9 are deprecated (level 7 in use)
dh_compress
dh_fixperms
dh_installdeb
dh_installdeb: Compatibility levels before 9 are deprecated (level 7 in use)
dh_gencontrol
dh_md5sums
dh_builddeb
dpkg-deb: building package 'intel-vaapi-driver-build-deps' in '../intel-vaapi-driver-build-deps_2.3.0+dfsg1-1_amd64.deb'.

The package has been created.
Attention, the package has been created in the current directory,
not in ".." as indicated by the message above!
(Reading database ... 287322 files and directories currently installed.)
Preparing to unpack intel-vaapi-driver-build-deps_2.3.0+dfsg1-1_amd64.deb ...
Unpacking intel-vaapi-driver-build-deps (2.3.0+dfsg1-1) over (2.3.0+dfsg1-1) ...
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Correcting dependencies...Starting pkgProblemResolver with broken count: 1
Starting 2 pkgProblemResolver with broken count: 1
Investigating (0) intel-vaapi-driver-build-deps:amd64 < 2.3.0+dfsg1-1 @iU mK Nb Ib >
Broken intel-vaapi-driver-build-deps:amd64 Depends on debhelper:amd64 < 10.2.5 @ii mK > (>= 12)
  Removing intel-vaapi-driver-build-deps:amd64 because I can't find debhelper:amd64
Done
 Done
Starting pkgProblemResolver with broken count: 0
Starting 2 pkgProblemResolver with broken count: 0
Done
The following packages will be REMOVED:
  intel-vaapi-driver-build-deps
0 upgraded, 0 newly installed, 1 to remove and 0 not upgraded.
1 not fully installed or removed.
After this operation, 9,216 B disk space will be freed.
Do you want to continue? [Y/n] 
(Reading database ... 287322 files and directories currently installed.)
Removing intel-vaapi-driver-build-deps (2.3.0+dfsg1-1) ...
mk-build-deps: Unable to install intel-vaapi-driver-build-deps at /usr/bin/mk-build-deps line 402.
mk-build-deps: Unable to install all build-dep packages

在示例中,debhelper:amd是软件包的稳定版本,不符合要求。可以使用Backports版本,但是找不到并安装。顺便说一句,即使我已经安装了Backports版本(显示为< 12~bpo9+1 @ii mK >),它 still 仍然抱怨找不到debhelper:amd

因此,当存在依赖版本要求只能由Backports和/或Testing的软件包满足时,使用mk-build-deps是否可以工作?如果是这样,您如何处理Backports的依赖关系?此外,您是否需要通过为每个测试创建一个全新的反向端口,并对每个他们的测试依赖项进行相同的操作来处理来自测试的依赖项?那可能很快就会变得丑陋。 :(

如果要使用mk-build-deps,那么我不清楚make-build-deps应该做什么。特别是对于软件包 foo

1)应该mk-build-deps创建一个单独的“依赖项”软件包,例如 foo-build-deps ,该软件包在安装后将依次安装其他软件包。我们拥有开始构建要向后移植的程序包所需的一切?
2)--remove的{​​{1}}选项是否导致 foo-build-deps 在安装后立即删除,但保留实际的依赖项,以便我们可以编译/构建反向端口包装?
3)如果是这样,则backport软件包将包含它们自己的那些依赖项副本,从而使我们在安装backport软件包后能够使用mk-build-deps安全删除依赖项吗?

0 个答案:

没有答案
相关问题