为什么“pip install gym”失败,并出现“python setup.py egg_info did not run successfully”错误?

错误如下:

...>pip install stable-baselines3==1.8.0
Looking in indexes: https://pypi.tuna.tsinghua.edu.cn/simple
Collecting stable-baselines3==1.8.0
  Downloading https://pypi.tuna.tsinghua.edu.cn/packages/76/07/fb80e30764c9caf1c66d20c58ed5dea8c72c07ff7e9957f2ca9b11b2cdc8/stable_baselines3-1.8.0-py3-none-any.whl (174 kB)
     ---------------------------------------- 174.5/174.5 kB 2.6 MB/s eta 0:00:00
Collecting pandas
  Downloading https://pypi.tuna.tsinghua.edu.cn/packages/f0/95/361d9726b57b44c1d8dce070930c2322a70157f697ecdcca13f4388247ab/pandas-2.0.2-cp38-cp38-win_amd64.whl (10.8 MB)
     ---------------------------------------- 10.8/10.8 MB 12.6 MB/s eta 0:00:00
Collecting matplotlib
  Downloading https://pypi.tuna.tsinghua.edu.cn/packages/92/01/2c04d328db6955d77f8f60c17068dde8aa66f153b2c599ca03c2cb0d5567/matplotlib-3.7.1-cp38-cp38-win_amd64.whl (7.6 MB)
     ---------------------------------------- 7.6/7.6 MB 13.2 MB/s eta 0:00:00
Collecting gym==0.21
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/4b/48/920cea66177b865663fde5a9390a59de0ef3b642ad98106ac1d8717d7005/gym-0.21.0.tar.gz (1.5 MB)
  Preparing metadata (setup.py) ... error
  error: subprocess-exited-with-error

  × python setup.py egg_info did not run successfully.
  │ exit code: 1
  ╰─> [1 lines of output]
      error in gym setup command: 'extras_require' must be a dictionary whose values are strings or lists of strings containing valid project/version requirement specifiers.
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
error: metadata-generation-failed

× Encountered error while generating package metadata.
╰─> See above for output.

note: This is an issue with the package mentioned above, not pip.
hint: See above for details.

结论

TL;DR降级setuptools==65.5.0wheel<0.40.0

pip install setuptools==65.5.0 "wheel<0.40.0"

解释

这里的问题似乎与wheel(0. 40. 0+)setuptools(66. 0. 0+)有关,它们现在报告gym==0.21.0的安装文件中的版本字符串不再有效。以下追溯来自Github #3202 for gym中报告的Gym构建轮

...
wheel.vendored.packaging.requirements.InvalidRequirement: Expected end or semicolon (after version specifier)
opencv-python>=3.

它引用setup.py中的opencv-python>=3.字符串。看起来较新版本的wheel在这里引发了错误。
您可以在Github issue #3211中找到的一种解决方法是降级setuptools和wheel的版本,如下所示:

pip install setuptools==65.5.0 "wheel<0.40.0"

重启内核后,你应该可以运行:

pip install gym==0.21.0

参考

。。。

  • 9
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 7
    评论
### 回答1: 这个问题可能是由于pip安装包的过程中,依赖的Python包没有正确安装所导致的。您可以尝试以下几种方法: 1. 更新pip:运行以下命令:pip install --upgrade pip 2. 检查Python环境是否正常:检查Python版本是否正确,以及Python环境变量是否配置正确。 3. 检查Python包的依赖关系:查看您安装的包是否需要其他包的支持。如果需要,请先安装这些包。 4. 检查安装包的来源:检查您安装的包是否来自可信的源,如PyPI。如果不是,请使用其他可信的源安装。 如果以上方法都无法解决问题,建议您提供更详细的错误信息,以便更好地了解问题所在,并尝试其他解决方案。 ### 回答2: 当运行"pip install"命令时,报错"python setup.py egg_info did not run successfully"通常是由于以下几个原因导致的: 1. 缺少依赖项:某些包可能依赖于其他软件包或者库。在运行"pip install"之前,需确保所有依赖项已经安装。通过查阅软件包的文档或在官方网站上查找所需的依赖项,并在安装之前手动安装这些依赖项。 2. 网络问题:有时可能由于网络连接问题,导致无法下载或安装包。请确保网络连接正常,并尝试重新运行"pip install"命令。 3. 权限问题:如果在安装过程中缺少适当的权限,可能导致报错。请确保当前用户具有足够的权限来安装软件包。在Windows系统上,可以尝试使用管理员权限运行命令提示符或者PowerShell。在Linux或Mac系统上,可以尝试在命令前加上sudo。 4. 包已被弃用:有时,所尝试安装的包可能已经被弃用或不再维护。可以在官方网站或官方软件包源码页面上查找更多信息,以确定是否需要更换其他包或选择使用不同的版本。 如果以上方法都无效,可以尝试通过更新pippython或者操作系统来解决问题。 ### 回答3: 当运行`pip install`命令时,报错`python setup.py egg_info did not run successfully`通常表示无法成功运行相关的`egg_info`脚本。这种情况可能出现在以下几种情况下: 1. 缺少依赖项:某些Python库在安装前可能需要先安装一些依赖库。如果您没有安装这些依赖库,或者版本不兼容,`egg_info`脚本可能无法成功运行。您可以在错误消息中查看提到的缺失依赖项,并尝试手动安装它们。 2. Python版本问题:某些库可能只在特定版本的Python中才能正常工作。如果您正在使用不兼容的Python版本,`egg_info`脚本可能无法运行。您可以通过检查库的官方文档或README文件,查看支持的Python版本。 3. 源问题:有时,pip包管理器可能无法从默认源中正确下载或安装软件包。您可以尝试更换pip的源为国内源如豆瓣源或清华源,以避免下载问题。 解决这个问题的方法可以尝试以下几种: 1. 确保已正确安装所有依赖库,并保持其版本兼容性。 2. 检查所使用的Python版本是否与库的要求兼容,如果不兼容,则可以尝试切换到兼容的Python版本。 3. 尝试更换pip源,可以使用`-i`选项指定其他源,比如使用豆瓣源:`pip install -i https://pypi.doubanio.com/simple <package_name>`。 4. 如果以上方法都不起作用,您还可以尝试手动下载软件包文件(.whl或.tar.gz),然后使用`pip install`命令指定本地文件路径进行安装。 通过以上的方法,您应该能够解决`python setup.py egg_info did not run successfully`的报错问题。如果问题仍然存在,建议查看错误消息中的详细信息,以便更准确地确定问题所在。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值