Como corrigir o apt depois de fazer o easy_install pip?

1

Eu encontrei o seguinte erro ao usar o pip: " pip pára com o ImportError para solicitação -Modul "

Eu li em um fórum que uma solução fácil era apenas apt-get remover o pip e depois fazer easy_install pip . Eu fiz isso, e realmente fiz pip começar a trabalhar novamente.

No entanto, mais tarde eu li que usar o easy_install é uma má idéia e pode quebrar o gerenciamento de pacotes do apt. Então, a minha pergunta é: como eu "desfaz" o que o easy_install fez e consegui gerenciar o pip novamente?

    
por J. Taylor 31.08.2015 / 20:58

1 resposta

2

O que você precisa fazer:
Reinstale o pacote python-pip com apt e depois atualize seu pip para a versão mais recente com pip próprio ou easy_install se ele estiver corrompido.

sudo apt-get install python-pip
sudo pip install --upgrade pip || sudo easy_install --upgrade pip

Por que você deve fazer isso:
apt apenas instala pacotes que encontra em seus repositórios instalados, mas os pacotes python nos repositórios oficiais estão incrivelmente desatualizados! No entanto, alguns pacotes que você pode instalar no futuro podem listar python-pip como dependência e exigir que o pacote seja instalado. Eles não o reconhecerão se você o instalou sem apt . Além disso, o comando man não funciona para pip , pois somente apt cria uma página de manual para ele, easy_install não.

No entanto,

easy_install e pip não buscam seus pacotes de nenhum repositório, mas do PyPI (Python Package Index), que sempre contém as últimas versões disponíveis.

Portanto, minha sugestão é usar pip em vez de apt para atualizar pacotes python se você quiser versões atuais. easy_install é o ancestral de pip e normalmente deve ser evitado e substituído por pip , mas, desde que seja quebrado, você terá que usá-lo. Você também pode fazer um sudo pip install --upgrade pip para obter a versão mais recente do pip sem easy_install .

Se você não tiver o pacote pip instalado por apt , faça isso adicionalmente. Eu não removi python-pip com apt antes de atualizá-lo com pip ou easy_install e também funciona. Como apt instala a versão antiga pip em /usr/bin e pip / easy_install use o diretório /usr/local/bin , que tem a prioridade mais alta, uma chamada simples para pip sem fornecer um diretório explícito sempre é executada a versão mais recente, se mais de uma estiver instalada.

    
por Byte Commander 31.08.2015 / 22:04