我正在跟踪Python GTK+ 3 Tutorial并尝试在virtualenv中运行一个有效的安装。我已经通过Ubuntu包管理器安装了python3-gi。事情是这样的:
:~$ mkvirtualenv py3 --python=/usr/bin/python3
Running virtualenv with interpreter /usr/bin/python3
Using base prefix '/usr'
New python executable in py3/bin/python3
Also creating executable in py3/bin/python
Installing setuptools, pip...python
done.
(py3):~$ python
Python 3.4.0 (default, Apr 11 2014, 13:05:11)
[GCC 4.8.2] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import gi
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named 'gi'
>>>
(py3):~$ deactivate
:~$ /usr/bin/python3
Python 3.4.0 (default, Apr 11 2014, 13:05:11)
[GCC 4.8.2] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import gi
>>>
如您所见,python3 gi显然在virtualenv中不可用,但我不确定如何安装它,因为python3gi是通过我的包管理器而不是pip安装的。
更新2018–Debian Stretch
安装GTK+3/GIR。
创建虚拟环境。
安装
pygobject
(pycairo
应作为依赖项)。更新2018–macOS
用Homebrew安装GTK+3和Gobject内省。
创建并激活虚拟环境。
安装
pygobject
(pycairo
应作为依赖项)。原始答案
这就是我在OSX10.11上的Python3.5虚拟环境中获得GTK+3的方法。
用Homebrew安装GTK+3。
创建并激活虚拟环境。
在虚拟环境中安装pycairo。
在虚拟环境中安装pygobject。
利润。
Python 3.5从PSF下载并安装。
我还没有找到合适的解决办法。当我遇到无法直接安装到virtualenv中的情况时,我会在那里对其进行符号链接,它运行良好(可能有例外,但这不是其中之一)。
一点也不优雅;似乎比让virtualenv完全访问所有系统包更好(通过
--system-site-packages
)。现在可以使用vext解决此问题。Vext允许您在virtualenv中安装单独访问系统包的软件包。要访问
gi
,请执行以下操作:相关问题 更多 >
编程相关推荐