ImportError: No module named gi.repository Mac OS

2019-04-06 03:46发布

I am installing virt-manager0.10.0 on Mac OS X

First I installed python,libvirt, gtk+3, pygtk, and other dependencies with homebrew

But when I run virt-manager I got this error

from gi.repository import GObject
ImportError: No module named gi.repository

When I run this import in python command line I get same error.but there is no error when I try import gtk

I think the problem is the homebrew pygtk version doesn't use gtk+3 and uses gtk2 and as we can see here gi.repository Windows only gtk+3 use that syntax.

4条回答
迷人小祖宗
2楼-- · 2019-04-06 03:56

The python3 bindings for GTK3 can be installed with brew install pygobject3 --with-python3 or brew reinstall pygobject3 --with-python3

查看更多
闹够了就滚
3楼-- · 2019-04-06 03:59

Did you use the built Python or the one that home brew installed to /opt/python/ ? issue which python in your term. Then in python issue import sys; print sys.path.

查看更多
做个烂人
4楼-- · 2019-04-06 04:11

The gi module is in the pygobject package but if you install this package on OS/X, you won't get the gi module. To really install gi on OS/X you need to install pygobject3 module which may look like it's for Python3 but it's not, the 3 comes from GTK version. So if you're on the OS/X, the simple brew install pygobject3 will do the trick.

查看更多
做自己的国王
5楼-- · 2019-04-06 04:19

pyGTK is for GTK 2 only. If you want the python bindings for GTK 3, you need to install pyGObject. See https://stackoverflow.com/a/9672426/518853

查看更多
登录 后发表回答