python3.4 falhou ao importar gi

2

Eu tentei muitas maneiras de instalar o gi no meu Mint17.02.

zen@zen:~ > sudo pip3 install gi
zen@zen:~ > sudo python3.4 -m pip install gi
Requirement already satisfied (use --upgrade to upgrade): gi in /usr/local/lib/python3.4/site-packages
Requirement already satisfied (use --upgrade to upgrade): requests in /usr/local/lib/python3.4/site-packages (from gi)

zen@zen:~ > sudo python3.4
Python 3.4.3 (default, Sep  2 2015, 01:05:11) 
[GCC 4.8.4] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import gi
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/local/lib/python3.4/site-packages/gi/__init__.py", line 39
    print url
            ^
SyntaxError: Missing parentheses in call to 'print'
    
por Zen 12.09.2015 / 07:12

2 respostas

1

Parece que você compilou seu próprio python (como meu Linux Mint 17.2 possui o 3.4.0 como padrão python3.4. A maneira mais fácil de executar programas usando gi nessa instalação é instalar o pacote python3-gi e Crie um link simbólico para o diretório lib/python3.4/site-packages do seu python auto-compilado.

Você pode fazer isso indo no diretório site-packages da sua instalação do 3.4.3 e faça:

ln -s $(    /usr/bin/python3 -c "import os, gi; print(os.path.dirname(gi.__file__))") .

Se você estiver usando virtualenvs e / ou tox, você deve considerar fazer com que os pacotes que você desenvolve dependam do meu ruamel.venvgtk que configura esses links na instalação (incluindo os do gtk no caso do seu uso pip para python2)

    
por 12.09.2015 / 08:08
0

Aconteceu comigo no meu sistema básico, redshift-gtk não seria mais iniciado porque o python3 importava o gi de /usr/local/lib/python3.5/dist-packages e falharia com o erro print url .

Desinstalar o gi usando o pip3 corrigiu o problema para mim:

$ sudo pip3 uninstall gi

A partir de então, python3 importa o gi "certo".

    
por 19.08.2017 / 13:04

Tags