安装ppaquette_gym_doom及相关依赖失败,运行代码报错求助
安装ppaquette_gym_doom及相关依赖失败,运行代码报错求助
看起来你在配置Doom强化学习环境时碰到了不少棘手的问题,我来帮你一步步排查可能的解决办法:
一、解决「Failed building wheel for doom-py」的问题
doom-py的wheel构建失败大多是因为缺少系统依赖或者Python版本不兼容,你可以试试这些步骤:
- 检查并安装系统依赖:
doom-py依赖SDL2、cmake等底层库,不同系统的安装方式不一样:- Ubuntu/Debian:执行
sudo apt-get install cmake libsdl2-dev libsdl2-image-dev libsdl2-mixer-dev libsdl2-ttf-dev - macOS:先确保装了Homebrew,再执行
brew install cmake sdl2 - Windows:手动下载安装CMake和SDL2的官方安装包,安装时记得勾选将工具添加到系统PATH中
- Ubuntu/Debian:执行
- 切换兼容的Python版本:
doom-py是比较老旧的库,对Python3.9及以上版本支持不佳,建议用conda创建一个Python3.7的专属环境:
激活环境后再进行后续的包安装操作conda create -n doom_env python=3.7 conda activate doom_env - 升级工具链后重新安装:
先确保pip、wheel、setuptools是最新版本:
然后尝试安装指定版本的doom-py:pip install --upgrade pip wheel setuptoolspip install doom-py==0.1.1
二、解决「cannot import name 'load_results'」的问题
这个错误是因为新版gym移除了load_results函数,而gym-pull依赖旧版gym的这个接口,你可以这么处理:
- 安装指定版本的gym:
pip install gym==0.15.4 - 放弃gym-pull,手动安装gym-doom:
直接从源码克隆安装ppaquette的gym-doom,稳定性更高:
安装完成后,直接用git clone https://github.com/ppaquette/gym-doom.git cd gym-doom pip install -e .import gym; env = gym.make('ppaquette/DoomBasic-v0')就能加载环境了
完整流程再试一遍
- 激活你创建的conda专属环境
- 安装好对应系统的底层依赖
- 执行
pip install --upgrade pip wheel setuptools - 执行
pip install gym==0.15.4 doom-py==0.1.1 - 克隆并安装gym-doom源码
这样应该能解决你碰到的两个问题啦,要是还有其他报错可以再贴具体信息出来~
备注:内容来源于stack exchange,提问作者신현빈
相关产品推荐
相关产品推荐

