(这是转自ask ubuntu)
我维护的安装包的一部分是
dist-upgrade
。我注意到 repos 最近发生了变化,例如将 libmysqlclient18
升级到 libmysqlclient20
,所以我不得不相应地更改我的依赖项。
但是,现在我无法安装我的应用程序,因为它依赖于一个显然不可安装的已安装软件包。
$ uname -a
Linux myvm 4.4.0-210-generic #242-Ubuntu SMP Fri Apr 16 09:57:00 UTC 2021 i686 i686 i686 GNU/Linux
$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 16.04.7 LTS
Release: 16.04
Codename: xenial
$ sudo apt install ./myapp.deb
The following packages have unmet dependencies:
myapp : Depends: libhpdf (>= 2.2.1) but it is not installable
E: Unable to correct problems, you have held broken packages.
$ apt search libhpdf
Sorting... Done
Full Text Search... Done
libhpdf-2.2.1/xenial,now 2.2.1-1.1 i386 [installed]
C library for generating pdf files
libhpdf-dev/xenial,now 2.2.1-1.1 i386 [installed]
C library for generating pdf files (development files)
$ find /usr/lib/ -name "libhpdf*"
/usr/lib/libhpdf.so
/usr/lib/libhpdf-2.2.1.so
我的
DEBIAN/control
中的依赖行包括,除其他外,Depends: .., libhpdf (>=2.2.1), ..
所以我做错了什么?
起初我以为他们完全放弃了 i386,但它仍然在列表中,至少在 some repos 中。 Xenial 页面 声明 Xenial 现在在 ESM 中,ESM 页面 将 x86 列为 Xenial 的支持架构。我确实怀疑我的公司是否支持 ESM,但无法获得关于他们是否为非 ESM 放弃 x86 的官方消息来源。