Cygwin执行命令后仍找不到python.h文件的技术求助
解决Cygwin中python.h找不到的问题
不建议直接把python.h复制到/usr/include目录
直接复制会打乱系统头文件的原有结构,而且Python头文件和对应版本的配置文件(比如你找到的pyconfig.h)是绑定的,单独复制python.h会导致编译时出现宏定义缺失、函数声明不匹配等各种错误,反而更难排查问题。正确的处理步骤:
- 确认Python版本:先执行
python --version或python2 --version,确认你系统里用的是Python2.7(因为你装的是python-devel对应2.7版本)。 - 重装完整的devel包:如果
/usr/include/python2.7/里只有pyconfig.h,说明你的python-devel包安装不完整,执行apt-cyg reinstall python-devel重新安装,确保所有头文件都被正确部署。 - 编译时指定头文件路径:如果确认python.h在
/usr/include/python2.7/目录下,编译代码时要给编译器加上头文件搜索路径参数。比如用gcc编译的话,命令格式如下:gcc 你的代码文件.c -o 输出文件名 -I/usr/include/python2.7 -lpython2.7-I参数用来指定额外的头文件目录,-lpython2.7用来链接Python2.7的库文件。 - 适配Python3的情况:如果你的代码是针对Python3开发的,那你需要安装Python3的开发包,执行
apt-cyg install python3-devel,安装完成后python.h会在/usr/include/pythonX.X/(X.X为你的Python3具体版本号)目录下,编译时同样指定对应路径和链接库即可。
- 确认Python版本:先执行
内容的提问来源于stack exchange,提问作者James
相关产品推荐
相关产品推荐

