O problema é que quando você instala coisas com sudo apt-get install
(ou sudo pip install
), elas são instaladas em lugares em /usr
, mas o python compilado da fonte foi instalado em /usr/local
. O python que você acaba executando quando você digita python
no prompt é o que você compilou (baseado na saída do comando python -c 'import sys; print(sys.path)'
), e ele não pode encontrar os pacotes python instalados no diretório /usr
. No entanto, o Ubuntu vem com o python (python 2 e python 3) já instalado no local correto, onde encontrará os pacotes instalados. Portanto, uma recomendação geral é tentar não misturar métodos de instalação como este. O Ubuntu tem muitos pacotes de software disponíveis através dos repositórios oficiais, o que elimina a necessidade de fazer muita compilação, e geralmente é recomendado instalar o software via apt quando possível.
Dito isto, para pacotes python (como Pygame e Beautiful Soup), as coisas podem ficar um pouco mais complicado . Misturar pip
e apt-get
pode causar problemas no futuro, portanto, uma abordagem para manter as coisas simples é ficar apenas com o gerenciador de pacotes do sistema. Se você acabar precisando usar o pip porque o gerenciador de pacotes não tem coisas que você precisa (ou versões atualizadas), é melhor trabalhar dentro de ambientes virtuais e use pip para todos os pacotes python necessários nesse ambiente virtual.
Para dizer ao seu sistema para localizar o python do sistema padrão corretamente (python 2, que é o padrão quando você chama apenas python
), tente reescrever o link simbólico que direciona o comando python
para o destino original:
sudo ln -s /usr/bin/python2.7 /usr/bin/python
Espero que isso permita encontrar os pacotes python que você instalou.