通过virtualenv中的pip安装PyGObject

Mic*_*pFx 11 python django pygobject gio python-3.x

我实际上是将旧的django应用程序从python2.7升级到python3.4.通过pip安装pygobject时出现此错误:

Collecting pygobject
  Using cached pygobject-2.28.3.tar.bz2
    Complete output from command python setup.py egg_info:
    Traceback (most recent call last):
      File "<string>", line 20, in <module>
      File "/tmp/pip-build-9dp0wn96/pygobject/setup.py", line 272
        raise SystemExit, 'ERROR: Nothing to do, gio could not be found and is essential.'
                    ^
    SyntaxError: invalid syntax

    ----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-build-9dp0wn96/pygobject
Run Code Online (Sandbox Code Playgroud)

我试图在virtualenv中安装它.系统范围的安装也不起作用......我正在使用python3.4在arch linux上工作

我已经安装了名为pygobject-devel 3.16.2-1的arch包但我还是无法导入gobject python模块

这个该死的gio是什么?

欢迎任何帮助...... Thanx提前!

Mic*_*pFx 7

回答上面提到的答案!看看那里=> Python无法安装PyGObject

好吧,我刚刚管理好了!

要在virtrualenv中安装PyGObject,请放弃pip.

  1. 在系统范围内安装PyGObject(使用包管理器或手动编译).例如,在我的情况下:

    sudo pacman -Suy python-gobject2
    
    Run Code Online (Sandbox Code Playgroud)
  2. 将它链接到你的virtualenv:

    ln -s /usr/lib/python3.4/site-packages/gobject* /WHEREVER/IS/YOUR/VIRTUALENV/venv/lib/python3.4/site-packages/
    
    Run Code Online (Sandbox Code Playgroud)
  3. 您可能需要链接其他一些模块(在我的案例中为glib):

    ln -s /usr/lib/python3.4/site-packages/glib* /WHEREVER/IS/YOUR/VIRTUALENV/venv/lib/python3.4/site-packages/
    
    Run Code Online (Sandbox Code Playgroud)

您可以在这里找到一些有关系统范围和virtualenv安装以及模块之间交互的有用信息:

virtualenv:指定系统范围与本地使用的软件包