如何在 ubuntu 上升级 libpng 版本

如何在 ubuntu 上升级 libpng 版本

apt-get install libpng12-dev我使用哪个安装版本安装了 libpng libpng 1.2.50

我反而想安装版本libpng 1.6.18

我如何libpng 1.6.18在 ubuntu 上安装?

我的 Ubuntu 版本是:

Description:    Ubuntu 14.04.3 LTS
Release:    14.04
Codename:   trusty

答案1

1.6.18 不存在。libpng 的 sourceforge 网站上只有 1.6.20、1.6.21 和 (beta) 1.6.22。1.6.18 可能是已删除的测试版。

由于您的存储库中显然没有最新版本的 libpng,我建议您自己编译 libpng。您可以这样做:

如何编译libpng 1.6.21:

$ wget https://downloads.sourceforge.net/project/libpng/libpng16/older-releases/1.6.21/libpng-1.6.21.tar.gz -O libpng.tar.gz
$ tar -xvf libpng.tar.gz
$ cd libpng-1.6.21
$ sudo bash configure --prefix=/usr/local/libpng
$ sudo make install

答案2

sudo apt-get 安装 libpng16-dev

答案3

查看您的发行版在线软件包资源管理器(https://packages.ubuntu.com/),如果你搜索 libpng,你会得到:

哪个显示你唯一的选择是libpng12-0libpng3实际上两个libpng版本1.2.50-1ubuntu2

因此,您无法通过这种方式安装任何其他版本的 libpng,这是因为您正在使用旧版本的 Ubuntu(当您在此处提出问题时,该版本在 2016 年就已经很旧了),虽然仍然受支持,但您应该升级,特别是如果您想要某些软件的较新版本(Ubuntu 的更高版本有 libpng 版本1.6.20-2)。

否则,您另外两个选择是:

  • 找到某个地方打包了您需要的发行版版本的人(或者自己构建这样的包,您需要了解您的发行版包是如何构建的,并且您需要处理所有依赖关系)
  • 手动安装您需要的版本,就像@user333044 回答的那样;请注意,编译库总是比编译软件更复杂,因为编译后结果将存储在非标准位置(覆盖软件包安装的标准版本是一个更糟糕的想法),并且您需要指定何时编译需要此库的其他工具(因为如果没有工具使用它,库本身就没有用处)。您可能也有动态库和链接器选项的解决方案,但这也很复杂。

相关内容