Python 3.4 和 2.7:无法为 python 3.4 安装 numpy 包
Posted
技术标签:
【中文标题】Python 3.4 和 2.7:无法为 python 3.4 安装 numpy 包【英文标题】:Python 3.4 and 2.7: Cannot install numpy package for python 3.4 【发布时间】:2014-09-13 14:15:39 【问题描述】:我正在使用 Ubuntu 12.04,并希望将 python 3.4 与 python 2.7 并排使用。
python 3.4 的安装工作正常。但是,我无法为 python 3 安装 numpy 包(因此我无法安装 scipy、pandas 等)。
使用
sudo pip3 install numpy
吐出以下错误:
File "numpy/core/setup.py", line 289, in check_types
"Cannot compile 'Python.h'. Perhaps you need to "\
SystemError: Cannot compile 'Python.h'. Perhaps you need to install python-dev|python-devel.
顺便说一句,我已经安装了 python-dev。
此外,通过
安装 numpy sudo apt-get install python-numpy
也不起作用,因为我已经为 python 2.7 安装了 numpy 并且安装程序响应说 numpy 已经是最新的。
我能做什么?谢谢!
【问题讨论】:
【参考方案1】:您尚未安装 Python 3 开发包。安装python3.4-dev
:
apt-get install python3.4-dev
主包从不包含开发头文件; Debian(以及 Ubuntu 的扩展)包策略是将它们放入单独的 -dev
包中。但是,要安装 numpy
,您需要这些文件才能编译扩展。
【讨论】:
对于那些在 2015 年有类似查询的人(和我一样)需要将上述命令更改为apt-get install python3.5-dev
。
对未来的任何人:调整命令以适合您当前的 Python 版本。是的,Ubuntu 不会读懂你的想法或日历。 :-P
或者您可以使用apt-get install python3-dev
,ubuntu 会读懂您的想法并为您的 Ubuntu 版本安装正确的版本。
@DaveLeBlanc:这取决于 Ubuntu 版本,哪个版本是“当前”。在 12.04 上是 Python 3.2,而不是 3.4。
知道如何在 MSYS2 中修复此错误吗?我尝试安装 mingw-w64-x86_64-python3,当我尝试使用 pip 安装 numpy 时出现此错误:SystemError: Cannot compile 'Python.h'. Perhaps you need to install python-dev|python-devel
【参考方案2】:
通过增加 python-dev 包直到我找到正确的包来解决。未来可能需要进一步增加。 python 开发人员的执行不力。
sudo apt-get install python3.7-dev
【讨论】:
你可以运行sudo apt-get install python3-dev
,它会安装你的python3版本对应的dev包。以上是关于Python 3.4 和 2.7:无法为 python 3.4 安装 numpy 包的主要内容,如果未能解决你的问题,请参考以下文章
强制 Nosetests 使用 Python 2.7 而不是 3.4
如何在 Ubuntu Linux 上将 pymssql 安装到 Python 3.4 而不是 2.7?