Support for python 3.11
还没有人认领这个 Issue。
评估
调研方向
首先复现 Python 3.11 的 pip install 命令,并检查 setup.py、http_parser/http_parser.c 和 http_parser/parser.c 中与扩展构建相关的部分。确认失败是由于包不兼容,还是由于缺少 Python.h 开发头文件,然后验证在 Python 3.11 上安装能够成功完成。
由索引模型根据 Issue 内容生成。
描述
Hi,
Looks like the pip install for python 3.11 is failing with the below error
Is it because there is no support for python3.11?
Please help me overcome this issue.
Thanks in advance.
http-parser$ python3.11 -m pip install http-parser
Defaulting to user installation because normal site-packages is not writeable
Collecting http-parser
Using cached http-parser-0.9.0.tar.gz (167 kB)
Preparing metadata (setup.py) ... done
Building wheels for collected packages: http-parser
Building wheel for http-parser (setup.py) ... error
error: subprocess-exited-with-error
× python setup.py bdist_wheel did not run successfully.
│ exit code: 1
╰─> [25 lines of output]
/tmp/pip-install-87f67s16/http-parser_70fb4870541b4fc9ac3bfe953fb58d23/setup.py:12: DeprecationWarning: the imp module is deprecated in favour of importlib and slated for removal in Python 3.12; see the module's documentation for alternative uses
from imp import load_source
running bdist_wheel
running build
running build_py
creating build
creating build/lib.linux-x86_64-3.11
creating build/lib.linux-x86_64-3.11/http_parser
copying http_parser/__init__.py -> build/lib.linux-x86_64-3.11/http_parser
copying http_parser/reader.py -> build/lib.linux-x86_64-3.11/http_parser
copying http_parser/util.py -> build/lib.linux-x86_64-3.11/http_parser
copying http_parser/_socketio.py -> build/lib.linux-x86_64-3.11/http_parser
copying http_parser/pyparser.py -> build/lib.linux-x86_64-3.11/http_parser
copying http_parser/http.py -> build/lib.linux-x86_64-3.11/http_parser
running build_ext
building 'http_parser.parser' extension
creating build/temp.linux-x86_64-3.11
creating build/temp.linux-x86_64-3.11/http_parser
x86_64-linux-gnu-gcc -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -g -fwrapv -O2 -g -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -Iparser -I/usr/include/python3.11 -c http_parser/http_parser.c -o build/temp.linux-x86_64-3.11/http_parser/http_parser.o
x86_64-linux-gnu-gcc -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -g -fwrapv -O2 -g -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -Iparser -I/usr/include/python3.11 -c http_parser/parser.c -o build/temp.linux-x86_64-3.11/http_parser/parser.o
http_parser/parser.c:4:10: fatal error: Python.h: No such file or directory
4 | #include "Python.h"
| ^~~~~~~~~~
compilation terminated.
error: command '/usr/bin/x86_64-linux-gnu-gcc' failed with exit code 1
[end of output]
note: This error originates from a subprocess, and is likely not a problem with pip.
ERROR: Failed building wheel for http-parser
Running setup.py clean for http-parser
Failed to build http-parser
Installing collected packages: http-parser
Running setup.py install for http-parser ... error
error: subprocess-exited-with-error
× Running setup.py install for http-parser did not run successfully.
│ exit code: 1
╰─> [27 lines of output]
/tmp/pip-install-87f67s16/http-parser_70fb4870541b4fc9ac3bfe953fb58d23/setup.py:12: DeprecationWarning: the imp module is deprecated in favour of importlib and slated for removal in Python 3.12; see the module's documentation for alternative uses
from imp import load_source
running install
/usr/lib/python3/dist-packages/setuptools/command/install.py:34: SetuptoolsDeprecationWarning: setup.py install is deprecated. Use build and pip and other standards-based tools.
warnings.warn(
running build
running build_py
creating build
creating build/lib.linux-x86_64-3.11
creating build/lib.linux-x86_64-3.11/http_parser
copying http_parser/__init__.py -> build/lib.linux-x86_64-3.11/http_parser
copying http_parser/reader.py -> build/lib.linux-x86_64-3.11/http_parser
copying http_parser/util.py -> build/lib.linux-x86_64-3.11/http_parser
copying http_parser/_socketio.py -> build/lib.linux-x86_64-3.11/http_parser
copying http_parser/pyparser.py -> build/lib.linux-x86_64-3.11/http_parser
copying http_parser/http.py -> build/lib.linux-x86_64-3.11/http_parser
running build_ext
building 'http_parser.parser' extension
creating build/temp.linux-x86_64-3.11
creating build/temp.linux-x86_64-3.11/http_parser
x86_64-linux-gnu-gcc -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -g -fwrapv -O2 -g -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -Iparser -I/usr/include/python3.11 -c http_parser/http_parser.c -o build/temp.linux-x86_64-3.11/http_parser/http_parser.o
x86_64-linux-gnu-gcc -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -g -fwrapv -O2 -g -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -Iparser -I/usr/include/python3.11 -c http_parser/parser.c -o build/temp.linux-x86_64-3.11/http_parser/parser.o
http_parser/parser.c:4:10: fatal error: Python.h: No such file or directory
4 | #include "Python.h"
| ^~~~~~~~~~
compilation terminated.
error: command '/usr/bin/x86_64-linux-gnu-gcc' failed with exit code 1
[end of output]
note: This error originates from a subprocess, and is likely not a problem with pip.
error: legacy-install-failure
× Encountered error while trying to install package.
╰─> http-parser
note: This is an issue with the package mentioned above, not pip.
hint: See above for output from the failure.
- 主要语言
- C
- 星标
- 345
- 派生
- 93
- PR 合并指标
- 30 天内没有已合并 PR
环境准备
这个项目没有提供开发容器、Dockerfile 或贡献指南,环境需要你自己搭建:先看它的 README,通用步骤见我们的新手贡献指南。
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
benoitc/http-parser 的其他 Issue
-
Python 3.12 installation fails可能已有人在做 @s-t-e-v-e-n-k 于 1039 天前认领。 未关闭
难度 2/5 1-3 小时 新手友好度 38/100
benoitc/http-parser#99 · 1 条评论 · 6 个 reaction ·
-
难度 3/5 1-2 天 新手友好度 50/100
benoitc/http-parser#96 ·
-
Build fails on python3.11可能重新可做 关联的 PR 已关闭且未合并。 未关闭
难度 2/5 1-3 小时 新手友好度 45/100
benoitc/http-parser#94 · 1 个 reaction ·
-
难度 3/5 1-2 天 新手友好度 30/100
benoitc/http-parser#93 · 1 条评论 · 1 个 reaction ·
-
难度 3/5 1-2 天 新手友好度 25/100
benoitc/http-parser#82 · 2 条评论 · 1 个 reaction ·
查看 benoitc/http-parser 的全部 Issue
相似的 Issue
-
`table_create()` crashes when an `hccalloc()` for the option table fails可能已有人在做 @marinelay 今天认领。 未关闭type: bug
难度 2/5 1-3 小时 新手友好度 78/100
维护者通常 1 天内回复
-
bug severity: low
难度 2/5 1-3 小时 新手友好度 78/100
AlessandroSangiuliano/Uros#950 ·
-
ESP32
难度 1/5 1 小时以内 新手友好度 84/100
-
难度 1/5 1-3 小时 新手友好度 82/100
HandBrake/HandBrake#8266 · 1 条评论 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 65/100
saschb2b/Mega-Man-Battle-Network-Cyberworld-Endless#568 ·
维护者通常 1 天内回复