安装stable-baselines3[extra]与gym[all]报错,求解决方案
解决stable-baselines3[extra]和gym[all]安装报错的方案
问题1:box2d-py构建失败,提示swig.exe不存在
- 不要用
pip install swig,这个包并非系统级的SWIG编译工具,无法满足box2d-py的编译依赖需求。 - Windows系统:
- 下载对应系统位数的SWIG压缩包
- 解压后找到
swig.exe所在文件夹,将该路径添加到系统环境变量PATH - 重启命令行或VS Code后再执行安装命令
- Linux系统:执行
sudo apt-get install swig - macOS系统:执行
brew install swig
问题2:gym的setup命令报错extras_require格式不符合要求
这个问题源于gym版本与stable-baselines3不兼容,直接安装gym[all]可能拉取了不匹配的新版本,按以下步骤解决:
- 先卸载已安装的gym相关包:
pip uninstall -y gym gym[all] gymnasium - 安装stable-baselines3指定的兼容gym版本,避免直接使用
gym[all](新版gym已将多数环境拆分至独立包):pip install stable-baselines3[extra] "gym<=0.26.2" - 若需要box2d相关环境,单独安装对应包:
pip install box2d-py box2d-kengz
验证安装有效性
安装完成后,执行以下代码确认环境正常:
import gym from stable_baselines3 import PPO env = gym.make("CartPole-v1") model = PPO("MlpPolicy", env, verbose=1) model.learn(total_timesteps=1000)
内容的提问来源于stack exchange,提问作者Sherwin
相关产品推荐
相关产品推荐

