![libpangocairo-1.0.so.0:未定义的符号:cairo_has_show_text_glyphs 错误](https://linux22.com/image/43281/libpangocairo-1.0.so.0%EF%BC%9A%E6%9C%AA%E5%AE%9A%E4%B9%89%E7%9A%84%E7%AC%A6%E5%8F%B7%EF%BC%9Acairo_has_show_text_glyphs%20%E9%94%99%E8%AF%AF.png)
我正在使用 Debian Squeeze,并且想安装 Gimp 2.8。我为 Gimp 安装了很多软件包依赖项,但无法成功完成 Gimp 软件包的安装
在安装 Gimp 依赖包时,我认为我破坏了一个必要的包,因为现在当我尝试启动时出现以下错误thunar
等等gedit
。
symbol lookup error: /usr/local/lib/libpangocairo-1.0.so.0: undefined symbol: cairo_has_show_text_glyphs
我该如何解决这个错误?
答案1
libpangocairo-1.0.so.0
您安装的in版本/usr/local/lib
与 in 版本不兼容/usr/lib
(可能是因为它们是针对它们所依赖的库的不同版本进行编译的)。
如果您不再使用 中的 Gnome 库/usr/local/lib
,请将其删除。如果您将它们用于已安装的应用程序/usr/local/bin
,请根据 Debian 中的库版本重新编译这些应用程序,或者将库移到标准库路径之外并使用如下所示的 shell 脚本来启动 中的 Gnome 应用程序/usr/local/bin
:
#!/bin/sh
export LD_LIBRARY_PATH=/usr/local/lib/gnome-extra-libraries
exec /usr/local/bin/locally-installed-gnome-application.bin
libpangocairo-1.0.so.0
及其同伴移动到/usr/local/lib/gnome-extra-libraries
并移动/usr/local/bin/locally-installed-gnome-application
到/usr/local/bin/locally-installed-gnome-application.bin
。
答案2
如果您的版本libpango1.0-0
出现问题,请尝试切换回正确的版本进行挤压(如果可能)。
dlocate libpangocairo-1.0.so.0
libpango1.0-0: /usr/lib/libpangocairo-1.0.so.0.2800.3
apt-cache policy libpango1.0-0
libpango1.0-0:
Installed: 1.28.3-1+squeeze2
Candidate: 1.28.3-1+squeeze2
Version table:
1.30.0-1 0
50 http://debian.csail.mit.edu/debian/ testing/main i386 Packages
50 http://debian.csail.mit.edu/debian/ unstable/main i386 Packages
*** 1.28.3-1+squeeze2 0
500 http://debian.csail.mit.edu/debian/ squeeze/main i386 Packages
500 http://security.debian.org/ squeeze/updates/main i386 Packages
100 /var/lib/dpkg/status
apt-cache policy
向您展示的是哪个版本libpango1.0-0
?
尝试
apt-get install libpango1.0-0/stable
如果 apt 抱怨依赖项,请尝试将它们添加到命令行,如 packagename/stable。我不知道这是否有效,但这是合理的第一步。
向后移植 gimp 2.8 可能并不那么容易。我建议您将其作为一个单独的问题发布。