我迫切需要能够在无头 RHEL 5.3 VM 上运行 Meld(ssh -X <hostname>
在 Linux 上或在 Windows 上 PuTTY + Xming — 我得到完全相同的错误 — 见下文)。
我yum
在以前版本的 RHEL 上安装 Meld 没有问题,但这是一个定制的企业虚拟机,无论我多么努力,我都无法从存储库中检索 Meld,所以这就是我最终做了:
$ wget ftp://ftp.is.co.za/mirror/ftp.rpmforge.net/redhat/el5/en/i386/dag/RPMS/meld-1.1.5-1.el5.rf.noarch.rpm
$ rpm -Uvh meld-1.1.5-1.el5.rf.noarch.rpm
$ git config --global merge.tool meld
我以为就是这样,因为当我使用meld
命令测试安装时,程序通过 X11 转发并正确运行。但是,当我模拟合并冲突并运行git mergetool
时,Meld 失败如下:
Normal merge conflict for 'test.txt':
{local}: modified file
{remote}: modified file
Traceback (most recent call last):
File "/usr/share/meld/meld", line 78, in <module>
import gtk
File "/usr/lib64/python2.6/site-packages/gtk-2.0/gtk/__init__.py", line 40, in <module>
from gtk import _gtk
ImportError: /usr/lib64/libXrandr.so.2: undefined symbol: _XEatDataWords
这就是我卡住的地方。第 78 行/usr/share/meld/meld
只是import gtk
...已经安装了。__init__.py
同样,第 40 行是from gtk import _gtk
. 问题似乎出在这一行:
ImportError: /usr/lib64/libXrandr.so.2: undefined symbol: _XEatDataWords
这似乎是一个非常深奥的错误。有没有人见过类似的东西?是否有我错过的要求或依赖?