Como instalar o erro em um ambiente virtual do Python 3?

1

Estou tentando instalar o Err no Ubuntu Server 12.04.4. Requer python mais um monte de dependências.

Quando segui as instruções de instalação, não consegui fazê-lo funcionar usando o "padrão", que parecia ser o Python 2.7. Parece haver uma dependência circular no sleekxmpp (um dos requisitos):

ImportError: cannot import name resolver

Então, minha ideia é usar o Python 3. Meu sistema tem tudo isso instalado:

python                                          install
python-apt-common                               install
python-dbus-dev                                 install
python-minimal                                  install
python-pip                                      install
python-pkg-resources                            install
python-setuptools                               install
python2.7                                       install
python2.7-minimal                               install
python3                                         install
python3-minimal                                 install
python3.2                                       install
python3.2-minimal                               install

Quando eu uso o pip para instalar coisas, eu não tenho idéia se ele está usando python 2, ou 3, ou realmente, o que está usando (não consigo ver como controlar qual versão dos pacotes instalar, qual versão python esses pacotes são baseados em pip freeze ).

Eu só quero ter um ambiente que use a versão mais recente do Python 3 sem que todas essas outras coisas me confundam. Então eu tentei instalar virtualenv e configurar o ambiente, mas parece ser apenas outro ambiente python2.7 . Resumindo, não faço ideia do que está acontecendo e preciso de alguns indicadores.

    
por njp 03.04.2014 / 11:29

1 resposta

2

O erro causa muitas dependências, então sugiro usar o Virtualenv para instalá-lo. E uma vez que mencionam que a partir do Err v2.0, eles escreveram com o Python 3 em mente, você deve usar o Python 3 se puder (embora o Err também seja compatível com o Python 2.7).

Para entender como usar o virtualenv, consulte a documentação e crie alguns deles para reproduzir e entender o conceito. Basicamente virtualenv é manter as dependências separadas para cada projeto e não misturar com as que já estão instaladas no sistema por padrão.

Virtualenv vem por padrão na biblioteca padrão do Python 3.3 em diante. Mas como você tem o Python 3.2, precisaríamos instalá-lo primeiro.

sudo apt-get install python3-pip
sudo pip3 install virtualenv

Agora, crie o virtualenv para instalar o Err e ative-o seguindo a documentação acima. Eu não tenho o Python 3.2, então não posso testá-lo agora, mas o seguinte deve funcionar (supondo que você queira criá-lo em ~/venv/py3-err/ ):

python3 virtualenv.py ~/venv/py3-err/
. ~/venv/py3-err/bin/activate

Uma vez ativado, instale Err usando pip. Desde então, você está enfrentando problemas com sleekxmpp , um bug foi relatado nesse sentido e foi corrigido em seu ramo mestre do Github. Então, instale-o diretamente de lá:

pip install https://github.com/gbin/err/archive/master.zip

Se você obtiver erros de compilação nesta etapa, faça o download dos pacotes de compilação básicos e execute novamente o comando acima:

sudo apt-get install build-essential cmake libffi-dev

Uma vez instalado, você precisa salvar o config-template.py as config.py em um diretório de dados separado. cd para este diretório e inicie-o executando apenas err.py ou err.py --daemon seguindo o guia do usuário .

    
por Aditya 04.04.2014 / 01:35