Problem installing Python-Dev
I am having trouble installing python-dev
. It all started when I tried to install another Python package and got the error:
SystemError: Cannot compile 'Python.h'. Perhaps you need to install python-dev.
I tried sudo apt-get install python-dev
but got the error:
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.
So then I tried sudo apt-get install python2.7-dev
and got the error:
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
I have tried most everything in the post unmet dependencies. I am running Ubuntu 12.04 and I have everything updated. I have done apt-get clean
and apt-get autoclean
. I have tried apt-get -f install
and all variations on that theme. I have cleaned up my PPA. I even tried using Aptitude, and though it did a lot of clean up, the result was the same.
I really want to be able to install python-dev. How can I make this happen? At this point, I am willing to consider extreme options, whatever they may be.
Solution 1:
This bit:
python2.7-dev : Depends: python2.7 (= 2.7.3-0ubuntu3) but 2.7.3-0ubuntu3.1 is to be installed
suggests that you are using some mismatched repositories, or have some apt-pins in place keeping the version dependencies from lining up. I think, specifically, python-2.7 2.7.3-0ubuntu3.1
is in the Precise-proposed
repository and the 2.7.3-0ubuntu3
version is in Precise/main proper, so you may be preferring -proposed for some but not all packages.
Can you edit your question to include the output of:
apt-cache policy python2.7-dev
apt-cache policy python2.7
and maybe:
apt-cache show python2.7
...
Reading the apt-cache output from your pastebin, it looks like you have the python2.7 2.7.3-0ubuntu3.1
from precise-updates/main
installed, but python2.7-dev
is from precise/main
. I think your install media or an earlier "apt-get update" included the precise-updates
repository, but it's not in your current sources.list.
I think you'll be able to get the install going after adding precise-updates
and then 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
Solution 2:
You shouldn't install numpy with pip, use the package Ubuntu provides:
dennis@koekblik:~$ apt-cache show python-numpy
Package: python-numpy
Priority: optional
Section: python
Installed-Size: 7616
...
As to your actual problem: try installing python2.7-dev
. It will likely fail but should give you a better error message.