查看: 1589|回复: 3

Utilsmodule.c: 1:20: fatal error: python.h: no such file or directory compila...

[复制链接]

11

主题

63

帖子

159

积分

注册会员

Rank: 2

积分
159
发表于 2018-9-19 10:20:17 | 显示全部楼层 |阅读模式
我正在尝试使用C扩展文件构建共享库,但首先我必须使用以下命令生成输出文件:
gcc -Wall utilsmodule.c -o Utilc
执行命令后,我收到此错误消息:
Utilsmodule.c: 1:20: fatal error: python.h: no such file or directory compilation terminates.
事实上,我已经通过互联网尝试了所有建议的解决方案,但问题仍然存在..
回复

使用道具 举报

10

主题

82

帖子

200

积分

中级会员

Rank: 3Rank: 3

积分
200
发表于 2018-9-19 10:21:15 | 显示全部楼层
看起来你没有正确安装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
回复

使用道具 举报

11

主题

80

帖子

199

积分

注册会员

Rank: 2

积分
199
发表于 2018-9-19 10:22:44 | 显示全部楼层
在Ubuntu上,我运行的是Python 3,我不得不安装
sudo apt-get install python3-dev
如果要使用未链接到python3的Python版本,请安装相关的python3.x-dev软件包。例如:
sudo apt-get install python3.5-dev
回复

使用道具 举报

4

主题

37

帖子

98

积分

注册会员

Rank: 2

积分
98
发表于 2018-9-19 10:24:58 | 显示全部楼层
你要做的两件事。
安装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.7  utilsmodule.c -o Utilc
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表