安装 Python-Dev 时出现问题

安装 Python-Dev 时出现问题

我在安装时遇到问题python-dev。这一切都始于我尝试安装另一个 Python 包时收到错误:

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

我尝试过sudo apt-get install python-dev但收到错误:

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.

然后我尝试了一下sudo apt-get install python2.7-dev,结果出现了错误:

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

我已经尝试了帖子里的大部分内容未满足的依赖关系。我正在运行 Ubuntu 12.04,并且已更新所有内容。我已经完成了apt-get cleanapt-get autoclean我已经尝试了apt-get -f install该主题的所有变体。我已经清理了我的 PPA。我甚至尝试使用 Aptitude,尽管它做了很多清理工作,但结果是一样的。

我真的很想能够安装 python-dev。我该如何实现呢?目前,我愿意考虑极端的选择,无论它们是什么。

答案1

这部分:

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

这表明您使用的存储库不匹配,或者存在一些 apt-pin,导致版本依赖关系无法对齐。我认为,具体来说,python-2.7 2.7.3-0ubuntu3.1位于Precise-proposed存储库中,2.7.3-0ubuntu3版本位于 Precise/main 中,因此您可能更喜欢对某些软件包使用 -proposed,但并非所有软件包都使用。

您能否编辑您的问题以包含以下内容的输出:

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

有可能:

apt-cache show python2.7

...

从 pastebin 中读取 apt-cache 输出,看起来您已经2.7.3-0ubuntu3.1安装了 python2.7 precise-updates/main ,但python2.7-dev来自precise/main。我认为您的安装媒体或早期的“apt-get update”包含了precise-updates存储库,但它不在您当前的 sources.list 中。

precise-updates我认为您在添加之后就可以开始安装了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

答案2

您不应该使用 pip 安装 numpy,而应该使用 Ubuntu 提供的包:

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

至于您的实际问题:尝试安装python2.7-dev。它可能会失败,但应该会给您更好的错误消息。

答案3

最快的解决方案:

  • 安装 ( sudo apt-get install synaptic) Synaptic 包管理器并启动它
  • 点击设置-存储库
  • 选择下载自:主服务器
  • 单击Close然后单击Reload
  • 标记python-dev为安装,Synaptic 还将标记python-devlibexpat1-dev, libssl-dev, libssl-doc, python2.7-dev, zlib1g-dev)的所有依赖项。

我刚刚在新安装的 Ubuntu x86 12.04.3 上解决了同样的问题。

答案4

对于遇到此问题的人,首先尝试运行

sudo apt-get update

并尝试再次安装

相关内容