ERROR: Could not build wheels for aiohttp, which is required to install pyproject.toml-based projects

回答 2 浏览 7787 2022-11-23

Python版本:3.11

通过pip install -r requirements.txt为一个应用程序安装依赖项,会出现以下错误。

socket.c -o build/temp.linux-armv8l-cpython-311/aiohttp/_websocket.o
aiohttp/_websocket.c:198:12: fatal error: 'longintrepr.h' file not found
#include "longintrepr.h"                                   
          ^~~~~~~                        1 error generated.
error: command '/data/data/com.termux/files/usr/bin/arm-linux-androideabi-clang' 
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 aiohttp
Failed to build aiohttp
ERROR: Could not build wheels for aiohttp, which is required to install
pyproject.toml-based projects

这个错误是Python 3.11版本特有的。在Python的3.10.6版本上,安装正常。

相关问题。yarl/_quoting.c:196:12: fatal error: 'longintrepr.h' file not found - 1 error generated

Anton Samokat 提问于2022-11-23
2 个回答
#1楼 已采纳
得票数 6

解决这个错误的方法:需要更新requirements.txt

不支持Python 3.11的模块版本:

aiohttp==3.8.1
yarl==1.4.2
frozenlist==1.3.0

工作版本:

aiohttp==3.8.2
yarl==1.8.1
frozenlist==1.3.1

链接到相应的问题,并进行了修复。

Anton Samokat 提问于2022-11-23
#2楼
得票数 2

如果你像我一样在将 aiohttp 版本降级到 3.8.1 时遇到一些问题,你可以使用其他方法。

  • alpaca_trade_api-2.3.0-py3-none-any.whl手动下载.whl文件。

  • 然后用7-zip打开.whl文件。

  • 转到 alpaca_trade_api-2.3.0.dist-info/METADATA。

  • 打开这个文件进行编辑,并修改第21行的要求

    从:

       Requires-Dist: aiohttp (==3.8.1)
    

    修改为:

       Requires-Dist: aiohttp (==3.8.4)
    
  • 保存此更改。

  • 转到终端并手动安装此轮子

     python -pip instal (file_location)/alpaca_trade_api-2.3.0-py3-none-any.whl 
    

对我很有用。

רועי שמש 提问于2023-02-22