3

我正在尝试让我酿造的 python 版本与酿造的 gtk 一起使用。但是,我收到此错误。我找不到导致此问题的问题。安装 pygtk 后会出现此错误。

$ python
Python 2.7.5 
[GCC 4.2.1 Compatible Apple LLVM 4.2 (clang-425.0.28)] on darwin
Type "help", "copyright", "credits" or "license" for more information.

>>> import gtk
/usr/local/Cellar/python/2.7.5/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/gtk-2.0/gio/__init__.py:23: Warning: g_str_has_prefix: assertion `str != NULL' failed
    from _gio import *
Segmentation fault: 11

安装的 gtk 和 pygtk 软件包版本是 gtk+-2.24.20 和 pygtk: stable 2.24.0。

我的 brew 安装包列表是:

atk         gdk-pixbuf  jpeg        pango       pygobject
cairo       gettext     libffi      pcre        pygtk
cmake       glib        libpng      pixman      python
fontconfig  gtk+        libtiff     pkg-config  readline
freetype    harfbuzz    nginx       postgresql  sqlite
gdbm        icu4c       ossp-uuid   py2cairo    xz
4

2 回答 2

0

当您安装了几个 gtk (pygtk) 库时,似乎会出现此错误。例如,一个来自 brew repo,另一个来自任何 dmg 或类似的。

因此,我可以建议您删除其中之一,例如非 brew 版本:

# rm -rf /opt/gtk

然后尝试在python中导入gtk

于 2015-02-11T21:54:42.290 回答
0

当我尝试启动 zim note 应用程序时,我遇到了同样的问题。OS X 有自己的 python 链接到 /usr/bin/python 和 brew link 自己在 /usr/local/bin/python 中编译的 python。

使用 Apple 的 python,我可以启动 zim 应用程序,但它在双击时崩溃(两指轻按)。

使用 Brew 的 python,我根本无法启动 Zim。壳牌向我展示了同样的错误:

python /Users/md760/my_apps/zim-0.62/zim.py
/usr/local/Cellar/python/2.7.8_2/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/gtk-2.0/gio/__init__.py:23: Warning: g_str_has_prefix: assertion `str != NULL' failed
  from _gio import *
Segmentation fault: 11

所以至少创建 brew githab 的票是个好主意。

于 2014-11-01T15:51:16.353 回答