首页 > 解决方案 > 安装 GNURadio 时出现 PyGTK 问题

问题描述

我正在尝试通过 PyBOMBS 在 vi​​rtualenv 中安装 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 cairoimport gi但不能import gobject但是,我按照这些说明从源代码成功构建并安装了 pygtk 。

安装这些东西后,PyBOMBS 安装程序仍然会产生关于找不到 PyGTK 的相同错误消息。我在这里链接了完整的 PyBOMBS 输出。

我也尝试过通过 apt 安装python-gtk2-devpython-gipython-gi-cairogir1.2-gtk-2.0,但如果可能的话,我不希望全局安装软件包。PyBOMBS 在安装这些 apt 包后产生了相同的输出。

在过去的两天里,我一直在为此烦恼,所以我非常感谢你们提出的任何和所有建议:)

标签: pythonpygtkpygobjectgnuradiogobject

解决方案


我假设 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 在断言上失败。


推荐阅读