Meld错误"无法导入:GTK +;没有名为repository"的模块

时间:2015-12-21 17:57:17

标签: python meld

Meld曾经在我的机器上工作(openSuse Linux 13.1,Python 2.7.6)但是在遇到Spyder的麻烦之后(就像它拒绝实际运行任何脚本一样),我卸载了大量的东西,然后慢慢将它们带回来试。

此后,meld不再起作用了。我一直收到此错误消息

> meld
Cannot import: GTK+
No module named gi

我能够通过安装gi来解决这个问题:

> pip install gi

现在错误被替换为:

> meld
Cannot import: GTK+
No module named repository

...而here是一个类似的问题,卸载gi显然有帮助吗?我很困惑。我确实尝试再次卸载它,但这只是让我回到了上一个错误(呃!)。

有什么想法吗?

3 个答案:

答案 0 :(得分:3)

好的,那不是很明显:

gi.repository不是gi的一部分,而是它自己的事物。这就是为什么不应该安装gi的原因(谢谢Moose)。

This article然后向我指出了可能的来源,python-gobject。但是,我已经安装了。所以我安装了其他类似的东西,而python-gobject-cairo包(Python 2.7,openSuse 13.1)就是这样做的。似乎有人忽略了对Meld的依赖......

答案 1 :(得分:1)

我取消了在Expected in:

中显示的文件的链接
  

预计在:/Applications/Meld.app/Contents/Frameworks/libz.1.dylib

unlink /Applications/Meld.app/Contents/Frameworks/libz.1.dylib

答案 2 :(得分:0)

将python3从3.7版更改为3.6版后,错误消失了。

我这样做的依据是:

sudo apt-get install python3.6
sudo rm /usr/bin/python3
sudo ln -s /usr/bin/python3.6 /usr/bin/python3