meld - gi._glib.GError:Icon' meld-change-apply-right'不在主题中。安装有什么问题?

时间:2016-03-04 10:55:27

标签: gtk glib libpng meld gio

我已经设法安装了meld 3.14.2和所有依赖包,通过从源代码编译每个包,并且所有包安装在具有--prefix=<base>/meld的NFS共享上,用于meld工具&amp;&amp; --prefix=<base>/meld/deps表示依赖项。

最后,我调用了该工具,我可以看到GUI。但是当我尝试进行一些功能测试时,它会让我错误。我从未使用过该工具。所以,我不知道它应该如何正常工作。但是用户已经指出了以下错误,我猜也可能存在许多其他错误。但以下是其中之一。

$meld
GLib-GIO-Message: Using the 'memory' GSettings backend.  Your settings will not be saved or shared with other applications.
II 1
Traceback (most recent call last):
File "/applics/platform/meld/meld-3.14.2/lib/python2.7/site-packages/meld/newdifftab.py", line 117, in on_button_compare_clicked
tab = self.diff_methods[self.diff_type](compare_paths)
File "/applics/platform/meld/meld-3.14.2/lib/python2.7/site-packages/meld/meldwindow.py", line 647, in append_filediff
doc = filediff.FileDiff(len(files))
File "/applics/platform/meld/meld-3.14.2/lib/python2.7/site-packages/meld/filediff.py", line 281, in __init__
from meld.gutterrendererchunk import GutterRendererChunkAction
File "/applics/platform/meld/meld-3.14.2/lib/python2.7/site-packages/meld/gutterrendererchunk.py", line 33, in <module>
class GutterRendererChunkAction(GtkSource.GutterRendererPixbuf):
File "/applics/platform/meld/meld-3.14.2/lib/python2.7/site-packages/meld/gutterrendererchunk.py", line 38, in GutterRendererChunkAction
MODE_REPLACE: load("meld-change-apply-right"),
File "/applics/platform/meld/meld-3.14.2/lib/python2.7/site-packages/meld/gutterrendererchunk.py", line 30, in load
return icon_theme.load_icon(icon_name, LINE_HEIGHT, 0)
File "/applics/platform/meld/meld-3.14.2/dependencies/lib/python2.7/site-packages/gi/types.py", line 113, in function
return info.invoke(*args, **kwargs)
gi._glib.GError: Icon 'meld-change-apply-right' not present in theme

请告诉我可能有什么问题?

我在整个安装过程中以及使用该工具时使用了以下变量。

路径,LD_LIBRARY_PATH,PKG_CONFIG_PATH,PYTHONPATH,GSETTINGS_SCHEMA_DIR

使用所有这些路径的原因是它是完全自定义的安装,因为服务器上已经存在已经存在的GTK等版本,我们不想打扰它们并希望单独设置用于融合,并且还以一种方式,可以在多个服务器上使用在NFS上共享的相同安装。

但是,与我们通常安装的其他工具不同,meld具有非常严重的依赖性,我们需要编译像GTK这样的复杂软件包。

无论如何,任何人都可以告诉我们当前安装有什么问题吗?我是否需要设置更多变量和参考,还是需要使用额外选项再次安装模块?现在,我只为每个软件包安装了推荐的依赖项,并保留了可选的软件包依赖项。

出现错误,我可以在我的安装<base>/meld/share/icons/hicolor/16x16/actions/meld-change-apply-right.png中找到png文件,然后该工具无法找到它?什么是主题在这里意味着什么?

在看到窗口后我真的为自己感到骄傲,但现在看起来它只是一个零功能的空窗口:(

enter image description here

5 个答案:

答案 0 :(得分:1)

我在Archlinux上运行Meld 3.16.0时遇到了类似的问题。在我的情况下,特定的错误消息是GLib.Error: gtk-icon-theme-error-quark: Icon 'meld-change-apply-right' not present in theme gnome (0)

我通过创建Meld图标安装目录中的符号链接来“固定”它,Meld显然正在寻找这些图标。就我而言,这意味着ln -s /usr/share/icons/hicolor/16x16/actions/meld* /usr/share/icons/gnome/16x16/actions/

我认为这是一个解决方案,而不是一个真正的解决方案,但至少Meld现在正在正常工作。

答案 1 :(得分:1)

我用

在Ubuntu 16.04上解决了
sudo apt-get install gnome-icon-theme

答案 2 :(得分:1)

重新安装融合和gnome-icon-theme解决了我的问题:

sudo apt-get install --reinstall meld gnome-icon-theme

没有--reinstall,我的Ubuntu 18.04.1 LTS仅得到以下信息:

$ sudo apt-get install meld gnome-icon-theme
Reading package lists... Done
Building dependency tree       
Reading state information... Done
gnome-icon-theme is already the newest version (3.12.0-3).
meld is already the newest version (3.18.0-6).

答案 3 :(得分:0)

我解决了重新安装meld的问题

$ sudo apt-get install meld

(debian延伸版提供了新版本)。问题消失了。

答案 4 :(得分:0)

重新安装在我的案例中也解决了CentOs 7上的问题。

sudo yum remove meld
sudo yum install meld