#include <python.h> - 在Linux Mint上终止编译

时间:2016-01-04 06:48:05

标签: python linux linuxmint

我正在尝试在我的Linux Mint 17.2 Cinnamon上安装4Suite-XML 1.02。我下载了tar.gz,将其解压缩,在解压缩的目录中打开一个终端,转移到带有sudo su的root shell,然后运行python setup.py install。我得到这个作为输出:

running install
running build
running config
running build_py
running build_ext
building 'Ft.Lib.number' extension
x86_64-linux-gnu-gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I/usr/include/python2.7 -c          Ft/Lib/src/number.c -o build/temp.linux-x86_64-2.7/Ft/Lib/src/number.o
Ft/Lib/src/number.c:7:20: fatal error: Python.h: No such file or directory
 #include <Python.h>
                ^
compilation terminated.
error: command 'x86_64-linux-gnu-gcc' failed with exit status 1

2 个答案:

答案 0 :(得分:4)

通常Linux发行版将编程语言运行时分为两个包,Python也不例外。

  • python - Python代码运行时

  • python-dev - 开发文件,库和标头。需要安装任何本机扩展。针对开发人员。将Python集成到&#34; native&#34; C库。 Python代码可跨操作系统移植,而C代码则不可移植。必须将C代码重新编译到每个操作系统。

您需要安装相关的python-dev包,其中包含编译Python原生扩展所需的C头。这个命令通常是基于Debian的发行版的sudo apt install python-dev。我没有检查Mint Linux的实际命令,但我认为它是相同的。

另请阅读官方Python软件包安装指南https://packaging.python.org/en/latest/installing.html - 通常sudo次安装,python setup.py install是不必要的。 pip install --user命令应该能够为您下载,解压缩和安装软件包。

答案 1 :(得分:2)

尝试:

sudo apt-get install python-dev python3-dev