pacote xxxx e python-xxxx

0

Estou tentando instalar a versão mais recente do pacote xxxx. Eu baixei, desarquivado e siga o leia-me: python setup-py install Mas python não vê minha versão mais recente. Parece que há um pacote python-xxxx já instalado (versão mais antiga do xxxx) e python usa isso eu acho. Como eu removo este conflito? Posso apenas remover o apt-get python-xxxx? Mas isso causaria problemas de dependências? (Arrgh, estou gastando mais tempo com problemas de instalação do que fazendo o trabalho real ...)

    
por ng0323 18.08.2014 / 11:27

1 resposta

1

Se você está desenvolvendo as coisas * , recomendo usar virtualenv para Crie um ambiente de pacote totalmente separado para o seu desenvolvimento. Isso permite que você instale qualquer coisa sem entrar em conflito com o sistema ... E, talvez mais importante, significa que as atualizações do sistema não entrarão em conflito com seu desenvolvimento (algo que eu perdi cabelo no passado).

Se você tem um programa instalado que depende de uma versão mais recente de uma biblioteca Python, isso é um pouco mais difícil.

  • Você pode remover o pacote python-xxxx do Apt e instalar com sudo pip , mas isso pode causar problemas de dependência com o apt.

  • Você pode deixar a versão empacotada e instalar com sudo pip . Isso é sujo de muitas maneiras, mas pode ocasionalmente funcionar. Eu ainda não recomendaria isso.

  • Ou você poderia empacotar corretamente a nova versão da biblioteca em um deb e instalá-la. Acabei de encontrar uma maneira super rápida de fazer isso, então vou passar por isso agora.

Como eu mencionei no terceiro marcador, empacotar pacotes python é bem simples uma vez que você saiba como. Eu vou sugerir usando stdeb . Uma vez instalado, torna a coisa toda tão simples quanto sudo pypi-install xxxx , mas imediatamente há um problema: a versão atual do repositório está com problemas e não funciona. Uma versão mais recente funciona, e não, a ironia não está perdida em mim.

Você precisa habilitar os repositórios propostos (procure em Fontes de software em atualizações), depois sudo apt-get update e finalmente sudo apt-get install python-stdeb .

Depois de ter feito isso, você pode simplesmente ligar:

sudo pypi-install xxxx

E stdeb gerará um pacote python-xxxx com todas as informações corretas sobre a versão e a instalará.

* coisas que não devem ser liberadas para a comunidade Ubuntu, onde o uso de dependências pré-empacotadas é desejável.

    
por Oli 18.08.2014 / 11:51