Python找到glib,但找不到_glib
我在Python(2.7)中尝试使用 import glib
,结果遇到了以下错误:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/share/pyshared/glib/__init__.py", line 22, in <module>
from glib._glib import *
ImportError: No module named _glib
看起来 glib
是找到了,但 _glib
却没有找到。
有没有人能给我一些解决这个问题的建议?我是在Ubuntu上运行,并且通过Ubuntu的包管理器安装了 python2.7
、python-gobject
、python-gda
和 dbus
。
2 个回答
我在使用Ubuntu 10.04,系统自带的Python版本是2.6.6,GCC版本是4.4.5。在Python中使用“import glib”似乎没有问题。
我通过软件包管理器安装了“python-numpy”、“python-matplotlib”和“python-pyfits”,没有安装其他的,特别是没有从软件包网站上下载更新版本,因为之前的经验告诉我,这通常会带来很多麻烦。
但是,我发现/usr/share/pyshared/glib/这个文件夹不见了,我不知道这个文件夹是怎么来的。这个文件夹在你的路径或PYTHONPATH中吗?如果在的话,试着把它从路径中移除,然后再试一次“import glib”,可能是因为这个地方有glib的第二次安装(可能是其他软件包安装的,也许是需要的)。
glib是一个与C编译器的接口,所以在很多地方都会用到。你的GCC版本是什么?GTK也大量使用glib。你是通过软件包管理器安装“GTK”和“pygtk”,还是自己手动一个个安装的?如果是后者,建议你通过软件包管理器来安装。
我觉得这可能是某个Python扩展安装混乱导致的。最彻底的解决办法当然是重装系统,但我猜你不想这样,所以我建议你先卸载所有Python使用的包,然后再通过软件包管理器重新安装它们。
希望这些建议能帮到你……
我遇到过这个问题。
你可以试着把glib和相关的文件夹从python2.7的安装位置移出去,比如在ubuntu系统中,路径是/usr/shared/pyshared,可能是这些文件安装得不太对。
然后用系统的包管理工具把相关的包先删除再重新安装...
sudo apt-get remove
然后再用 sudo apt-get install
来安装...
python-gobject python-gtk libglib2.0-dev python-cario python-gi
因为如果这些包在pyshared文件夹里,我发现它们可能没有被正确地重新安装。