为了ScreenLets 应用程序我需要libpng12-0
在 Ubuntu 19.10 系统上安装软件包。
我知道它是可用的仅适用于 Ubuntu 16.04 LTS。
因此我决定手动下载这个包并手动安装。
在以前的 Ubuntu 版本(例如 18.04 LTS)上,这个技巧最终成功,但在 19.10 上,它以非常奇怪的方式失败了:
wget http://mirrors.kernel.org/ubuntu/pool/main/libp/libpng/libpng12-0_1.2.54-1ubuntu1.1_amd64.deb sudo apt-get 安装./libpng12-0_1.2.54-1ubuntu1.1_amd64.deb 升级了 0 个,新安装了 1 个,删除了 0 个,并且未升级 0 个。 需要获取 0 B/116 kB 的档案。 此操作后,将使用285 kB的额外磁盘空间。 获取:1 /home/user/libpng12-0_1.2.54-1ubuntu1.1_amd64.deb libpng12-0 amd64 1.2.54-1ubuntu1.1 [116 kB] 选择之前未选择的包 libpng12-0:amd64。 (正在读取数据库...当前安装了 212864 个文件和目录。) 准备解压 .../libpng12-0_1.2.54-1ubuntu1.1_amd64.deb ... 正在解压 libpng12-0:amd64 (1.2.54-1ubuntu1.1) ... dpkg: 处理存档 /home/user/libpng12-0_1.2.54-1ubuntu1.1_amd64.deb (--unpack) 时出错: 无法安装“/lib/x86_64-linux-gnu/libpng12.so.0”的新版本:没有此文件或目录 未编写任何 apport 报告,因为错误消息表明本地系统存在问题 处理时遇到错误: /home/用户/libpng12-0_1.2.54-1ubuntu1.1_amd64.deb E: 子进程 /usr/bin/dpkg 返回错误代码 (1)
这里出了什么问题?如何libpng12-0
在 Ubuntu 19.10 系统上安装?
注意:19.04 上也会发生同样的情况,但它接近 EOL。
答案1
有一个 PPA 包含适用于 Ubuntu 20.04 LTS、21.04、21.10、22.04 和 22.10 的 libpng12-0: https://launchpad.net/~linuxuprising/+archive/ubuntu/libpng12。
您可以从以下位置下载 libpng12-0 deb这里或者添加 PPA:
sudo add-apt-repository ppa:linuxuprising/libpng12
sudo apt update
sudo apt install libpng12-0
旧版 libpng12-0 无法在 Ubuntu 19.04(及更新版本)中运行的原因是,在 Ubuntu 19.04 中,目录是指向 的/lib
符号链接(Ubuntu 18.04 及更早版本并非如此),这导致 libpng12-0 安装失败,因为此软件包尝试创建从到 的链接,而这已经是符号链接。因此,必须重新打包 libpng12-0 DEB 以修复此问题并进行安装。/usr/lib
usrmerge
/lib/x86_64-linux-gnu/libpng12.so.0
/usr/lib
来源:Linux 起义。