Problema ao instalar o Python-Dev

16

Estou com problemas para instalar o python-dev . Tudo começou quando tentei instalar outro pacote Python e recebi o erro:

SystemError: Cannot compile 'Python.h'. Perhaps you need to install python-dev.

Eu tentei sudo apt-get install python-dev , mas recebi o erro:

The following packages have unmet dependencies:
 python-dev : Depends: python2.7-dev (>= 2.7.3) but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

Então tentei sudo apt-get install python2.7-dev e recebi o erro:

The following packages have unmet dependencies:
 python2.7-dev : Depends: python2.7 (= 2.7.3-0ubuntu3) but 2.7.3-0ubuntu3.1 is to be installed
                 Depends: libpython2.7 (= 2.7.3-0ubuntu3) but 2.7.3-0ubuntu3.1 is to be installed

Eu tentei quase tudo na postagem dependências não atendidas . Estou executando o Ubuntu 12.04 e tenho tudo atualizado. Eu fiz apt-get clean e apt-get autoclean . Eu tentei apt-get -f install e todas as variações desse tema. Eu limpei meu PPA. Eu até tentei usar o Aptitude, e apesar de ter feito muita limpeza, o resultado foi o mesmo.

Eu realmente quero poder instalar o python-dev. Como posso fazer isso acontecer? Neste momento, estou disposto a considerar opções extremas, sejam elas quais forem.

    
por theJollySin 29.03.2013 / 18:16

4 respostas

20

Esta parte:

 python2.7-dev : Depends: python2.7 (= 2.7.3-0ubuntu3) but 2.7.3-0ubuntu3.1 is to be installed

sugere que você está usando alguns repositórios incompatíveis ou possui alguns apt-pins em vigor, evitando que as dependências de versão se alinhem. Eu acho que, especificamente, python-2.7 2.7.3-0ubuntu3.1 está no repositório Precise-proposed e a versão 2.7.3-0ubuntu3 está no Precise / main adequada, então você pode estar preferindo - proposto para alguns, mas não para todos os pacotes.

Você pode editar sua pergunta para incluir a saída de:

apt-cache policy python2.7-dev
apt-cache policy python2.7

e talvez:

apt-cache show python2.7

...

Lendo a saída do apt-cache de seu pastebin, parece que você tem o python2.7 2.7.3-0ubuntu3.1 de precise-updates/main instalado, mas python2.7-dev é de precise/main . Eu acho que sua mídia de instalação ou uma "atualização do apt-get" anterior incluiu o repositório precise-updates , mas ele não está na sua sources.list atual.

Acho que você conseguirá fazer a instalação depois de adicionar precise-updates e, em seguida, apt-get update .

echo "deb http://us.archive.ubuntu.com/ubuntu/ precise-updates main restricted" | sudo tee -a /etc/apt/sources.list.d/precise-updates.list
sudo apt-get update
sudo apt-get install python2.7-dev
    
por Steven K 18.06.2013 / 02:08
5

Você não deve instalar o numpy com o pip, use o pacote que o Ubuntu fornece:

dennis@koekblik:~$ apt-cache show python-numpy
Package: python-numpy
Priority: optional
Section: python
Installed-Size: 7616
...

Quanto ao seu problema real: tente instalar python2.7-dev . Ele provavelmente falhará, mas deverá fornecer uma mensagem de erro melhor.

    
por Dennis Kaarsemaker 29.03.2013 / 18:51
3

solução mais rápida:

  • Instale ( sudo apt-get install synaptic ) o Gerenciador de Pacotes Synaptic e inicie-o
  • Clique em Configurações-Repositórios
  • Selecione Download de: Servidor principal
  • Clique em Fechar e depois clique em Recarregar .
  • Marque python-dev para instalação e o Synaptic também marcará todas as dependências de python-dev ( libexpat1-dev, libssl-dev, libssl-doc, python2.7-dev, zlib1g-dev ).

Acabei de resolver o mesmo problema no Ubuntu x86 12.04.3 recém-instalado.

    
por VVV 23.09.2013 / 08:24
0

Para aqueles que encontram esse problema, primeiro tente e execute

sudo apt-get update

e tente instalar novamente

    
por Andrew Hammett 18.03.2016 / 12:57