在Ubuntu上使用mpi4py时未找到pyconfig.h
我正在尝试在一个Ubuntu服务器上安装MPI和mpi4py,以便测试一些我在Mac上运行的Python代码。我是从源代码安装的OpenMPI,然后下载了mpi4py的压缩包,试着运行python setup.py build
,但是失败了,出现了以下错误:
src/mpi4py.MPI.c:8:22: fatal error: pyconfig.h: No such file or directory
#include "pyconfig.h"
^
compilation terminated.
error: command '/usr/local/bin/mpicc' failed with exit status 1
我还尝试通过运行 sudo apt-get install libcr-dev mpich2 mpich2-doc
来安装MPICH,然后再运行setup
,但还是出现了同样的错误。
我在网上搜索了很久,但还是没找到解决办法。
我是不是在我的PATH中缺少了某个目录?
补充:经过进一步搜索,似乎pyconfig.h应该在/usr/include/python2.7/
这个目录下。在我的Mac上是有的,但是当我在Ubuntu服务器上运行ls
这个目录时,发现里面没有pyconfig.h。这可能就是问题所在吗?
2 个回答
0
不知道这个信息现在是否还适用,但对于将来遇到这个问题的人,记得用下面的命令安装正确版本的python-dev:
sudo apt-get install python<version>-dev
举个例子,如果你在虚拟环境中使用的是python3.5,而你电脑上默认的python版本是2.7,单纯输入:
sudo apt-get install python-dev
是没用的,而输入:
sudo apt-get install python3.5-dev
就能解决这个问题。
8