这是我尝试运行的命令及其输出:
$ python2
Python 2.7.8 (default, Sep 24 2014, 18:26:21)
[GCC 4.9.1 20140903 (prerelease)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import gi
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/lib/python2.7/site-packages/gi/__init__.py", line 42, in <module>
from . import _gi
ImportError: /usr/lib/python2.7/site-packages/gi/_gi.so: undefined symbol: g_type_check_instance_is_fundamentally_a
我已搜索此错误,但找不到任何有用的信息。
这些是我安装的包:
$ pacman -Qs python
local/pygtk 2.24.0-3
Python bindings for the GTK widget set
local/python 3.3.4-1
Next generation of the python high-level scripting language
local/python-dbus-common 1.2.0-2
Common dbus-python files shared between python-dbus and python2-dbus
local/python-gobject 3.14.0-2
Python 3 bindings for GObject
local/python-gobject2 2.28.6-11
Python 3 bindings for GObject2
local/python2 2.7.8-2
A high-level scripting language
local/python2-cairo 1.10.0-1
Python2 bindings for the cairo graphics library
local/python2-dbus 1.2.0-2
Python 2.7 bindings for DBUS
local/python2-distutils-extra 2.38-1
Enhancements to the Python build system
local/python2-gobject 3.14.0-2
Python 2 bindings for GObject
local/python2-gobject2 2.28.6-11
Python 2 bindings for GObject2
local/python2-pillow 2.3.0-3
Python Imaging Library (PIL) fork. Python2 version.
local/python2-xdg 0.25-1
Python library to access freedesktop.org standards
不知道我在这里错过了什么..
已解决:
错误是由于旧版本的 glib2 包造成的。
最佳答案
这可能不是 Python 问题,也不是您的代码问题。 /usr/lib/python2.7/site-packages/gi/_gi.so
可能已损坏或编译错误。也许你把它放在了错误的路径上。
如何解决: 升级glib2
关于python - 导入 gi 时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27447278/