eog 无法识别 .png 文件格式,许多图标都消失了

eog 无法识别 .png 文件格式,许多图标都消失了

我在装有 nVidia 显卡的 PC 上使用 Ubuntu 12.04 和 XFCE 桌面。我遇到了Ubuntu 更新过程中出现分段错误。一个非常不方便的后果是 .png 文件无法再被识别,因此许多程序无法启动(例如 gnome-commander、stardict)。此外,许多图标以及最小/最大/关闭按钮图标都丢失了。我尝试使用 eog 打开 .png,但出现“无法识别的图像文件格式”的错误。我尝试重新安装libgdk-pixbuf2.0-0librsvg但总是出现分段错误。

... 
Setting up libgdk-pixbuf2.0-0 (2.26.1-1) ... 
Segmentation fault (core dumped) 
Setting up libgdk-pixbuf2.0-0:i386 (2.26.1-1) ...
Processing triggers for libc-bin ... 
ldconfig deferred processing now taking place

运行gdk-pixbuf-query-loaders也会出现段错误(但不会出现gdk-pixbuf-pixdatagdk-pixbuf-csource):

>gdk-pixbuf-query-loaders --update-cache
Segmentation fault (core dumped)

我尝试登录 gnome 并看到了同样的效果。我尝试下载 libgdk-pixbuf2.0-0 软件包文件 .deb 并从命令行安装,也出现了段错误。有什么关于如何修复它的建议吗?

更新:我仔细检查了所有依赖项的版本精确更新数据库,并且都没有问题。

答案1

经过大量的 Google 和 Bing 搜索,我终于找到了解决方案。我在 x86_64 机器上运行基于 Ubuntu 14.04 LTS 的 BackBox 4.4,但我遇到了同样的问题,xfce 启动并正常工作,但图像、菜单和图标无法加载。所以我的桌面背景是空白的,菜单中的大多数图标都丢失了。然而,我记得在“apt-get upgrade”期间也遇到了同样的错误,如上所述。简而言之,这是我的修复方法:

sudo dpkg-reconfigure libgdk-pixbuf-2.0-0
sudo dpkg-reconfigure libglib-2.0-0

然后注销并登录,瞧!(无需重新启动)。

感谢您为我指明了正确的方向。其他帖子没有涉及这一点。

答案2

自从我昨天发帖以来,我无法对您的其他问题发表评论,但这是我在启动板上的回答:

是的,我找回了我的笔记本电脑!(我公司的一位专家做到了)

我不知道这有什么关系,但他的步骤如下:

  • 删除了我之前添加的 ppa (/etc/apt/sources.list.d/webupd8team-gvfs-libmtp-precise.list)
  • 重新安装了一些相应的软件包(gvfs、libglib2.0-0)
  • 重新配置 libgdk-pixbuf2.0-0

似乎 libglib2.0-0 导致了这个问题。我不知道这对大多数人来说是否没问题,但它至少应该有助于调试 :-)

答案3

去除ppa: sudo rm /etc/apt/sources.list.d/webupd8team-gvfs-libmtp-precise.list

然后:sudo apt-get update

之后使用以下命令强制卸载 libglib 库:

sudo dpkg -P --force-all --force-remove-reinstreq libglib2.0-0

然后您可以从常规 ubuntu ppas 重新安装它:sudo apt-get install libglib2.0-0

最后,您需要降级 glib-networking-common 和 gvfs-common:

sudo apt-get install glib-networking-common=2.32.1-1ubuntu2
sudo apt-get install gvfs-common=1.12.1-0ubuntu1.2ppa8~precise3

库版本应为:

libglib2.0-0:2.32.4-0ubuntu

gvfs-通用:1.12.1-0ubuntu

libgdk-pixbuf2:2.26.1-1

但显然您已经拥有所有正确的库版本,这真的很奇怪......

相关内容