You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python3.11执行pip安装依赖时aiohttp编译报错求助

解决Python 3.11下安装aiohttp时longintrepr.h找不到的错误

错误原因

Python 3.11移除了内部头文件longintrepr.h,而旧版本的aiohttp(或其依赖库如yarl)仍在代码中引用这个已被移除的文件,导致编译源码时失败。你遇到的报错和类似问题(如yarl编译时出现yarl/_quoting.c:196:12: 致命错误:找不到'longintrepr.h'文件 - 生成1个错误)本质原因完全相同。

解决办法

  • 升级aiohttp到兼容Python 3.11的版本:
    新版本的aiohttp已经适配了Python 3.11的改动,不再依赖longintrepr.h。可以直接执行:

    pip install aiohttp>=3.8.0
    

    或者修改requirements.txt中的aiohttp版本号为>=3.8.0(或更高兼容版本),再重新执行pip install -r requirements.txt。

  • 安装预编译wheel包,跳过源码编译:
    如果暂时无法升级aiohttp,可强制pip使用预编译的二进制包,避免源码编译环节:

    pip install --only-binary :all: aiohttp
    

    此命令会直接下载适配你系统的预编译包,不会触发源码编译,自然不会遇到头文件缺失问题。

  • 临时降级Python版本:
    若上述方案都无法实施,可暂时切换回Python 3.10.x版本,该版本保留了longintrepr.h,能正常完成依赖安装。等项目依赖库全部适配Python 3.11后再升级。

内容的提问来源于stack exchange,提问作者Anton Samokat

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.11 15:30:49