Utilsmodule.c: 1:20: fatal error: python.h: no such file or directory compila...
我正在尝试使用C扩展文件构建共享库,但首先我必须使用以下命令生成输出文件:gcc -Wall utilsmodule.c -o Utilc
执行命令后,我收到此错误消息:
Utilsmodule.c: 1:20: fatal error: python.h: no such file or directory compilation terminates.
事实上,我已经通过互联网尝试了所有建议的解决方案,但问题仍然存在..
看起来你没有正确安装python dev的头文件和静态库。使用包管理器在系统范围内安装它们。
对于apt(Ubuntu,Debian ......):
sudo apt-get install python-dev # for python2.x installs
sudo apt-get install python3-dev# for python3.x installs
对于yum(CentOS,RHEL ......):
sudo yum install python-devel # for python2.x installs
sudo yum install python34-devel # for python3.4 installs
对于dnf(Fedora ......):
sudo dnf install python2-devel# for python2.x installs
sudo dnf install python3-devel# for python3.x installs
对于zypper(openSUSE ...):
sudo zypper in python-devel # for python2.x installs
sudo zypper in python3-devel# for python3.x installs
对于apk(akos......):
# This is a departure from the normal Alpine naming
# scheme, which uses py2- and py3- prefixes
sudo apk add python2-dev# for python2.x installs
sudo apk add python3-dev# for python3.x installs
在Ubuntu上,我运行的是Python 3,我不得不安装
sudo apt-get install python3-dev
如果要使用未链接到python3的Python版本,请安装相关的python3.x-dev软件包。例如:
sudo apt-get install python3.5-dev
你要做的两件事。
安装Python的开发包,如果是Debian / Ubuntu / Mint,则使用命令完成:
sudo apt-get install python-dev
第二件事是默认情况下文件不在include路径中,默认情况下Python库也没有可执行文件链接。您需要添加这些标志(相应地替换Python的版本):
-I/usr/include/python2.7 -lpython2.7
你的编译命令应该是:
gcc -Wall -I/usr/include/python2.7 -lpython2.7utilsmodule.c -o Utilc
页:
[1]