python - 安装 GNURadio 时出现 PyGTK 问题
问题描述
我正在尝试通过 PyBOMBS 在 virtualenv 中安装 GNURadio。当我运行pybombs prefix init ~/prefix -a myprefix -R gnuradio-default
时,安装失败
-- Python checking for pygtk >= 2.10.0 - not found
看到这个后,我尝试安装 PyGTK。我首先使用此 GitHub 问题中的说明通过 pip 安装了 pycairo ,然后使用pip install pygobject
. 做了这两件事后,我能import cairo
,import gi
但不能import gobject
。但是,我按照这些说明从源代码成功构建并安装了 pygtk 。
安装这些东西后,PyBOMBS 安装程序仍然会产生关于找不到 PyGTK 的相同错误消息。我在这里链接了完整的 PyBOMBS 输出。
我也尝试过通过 apt 安装python-gtk2-dev
、python-gi
、python-gi-cairo
和gir1.2-gtk-2.0
,但如果可能的话,我不希望全局安装软件包。PyBOMBS 在安装这些 apt 包后产生了相同的输出。
在过去的两天里,我一直在为此烦恼,所以我非常感谢你们提出的任何和所有建议:)
解决方案
我假设 PyBOMBS 工具将安装任何必需的依赖项,因此您不必这样做。
我运行了以下似乎可以在 Ubuntu 16.04 系统上运行的命令。
virtualenv venv
source venv/bin/activate
pip install pybombs
pybombs auto-config
pybombs recipes add-defaults
pybombs prefix init ~/prefix -a myprefix -R gnuradio-default
编辑:检查我的日志后,我意识到我错了,构建过程甚至还没有开始,并且我遇到了与 OP 类似的错误。
在咨询了在 virtualenv 中安装 PyGtk之后,我在
我的中添加了以下符号链接venv/lib/python2.7
:
ln -s /usr/lib/python2.7/dist-packages/gtk-2.0/gio/
ln -s /usr/lib/python2.7/dist-packages/glib
ln -s /usr/lib/python2.7/dist-packages/gobject
ln -s /usr/lib/python2.7/dist-packages/gtk-2.0/gtk
ln -s /usr/lib/python2.7/dist-packages/gtk-2.0/
ln -s /usr/lib/python2.7/dist-packages/lxml
ln -s /usr/lib/python2.7/dist-packages/pygtk.pth
ln -s /usr/lib/python2.7/dist-packages/pygtk.py
ln -s /usr/lib/python2.7/dist-packages/PyQt4
重新运行后pybombs prefix init ~/prefix -a myprefix -R gnuradio-default
,它成功地构建了。
注意:使用 --system-site-packages 创建 virtualenv 不起作用,因为 pybombs 在断言上失败。