lunarlander环境报错解决ERROR: Could not build wheels for box2d-py, which is required to install pyproject.

文章讲述了在Windows10和Python3.10.13环境下,用户在尝试安装gym[box2d]时遇到的问题,通过下载swig配置环境变量、确保VisualStudio安装并启用C++桌面开发扩展,最终成功解决问题的过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

笔者环境:win10,python3.10.13

你可能已经看了许多解决方案,比如:

下载并解压swig,并配置环境变量path

pip安装pip install gym[box2d]

结果安装box2d时还是报错:

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


多得大佬xyt先生的指引,终于解决了问题:

首先确保你已经完成了swig的下载及环境变量的配置

链接中的第一步

然后确保电脑安装了visual studio

紫色这个

然后勾选上“使用c++的桌面开发”这个拓展

(已经安装了vs的,可以通过vs installer的“修改”选项进入)

再执行pip install gym[box2d]即可成功安装。

ModuleNotFoundError Traceback (most recent call last) File D:\ProgramData\anaconda3\envs\jqxx\lib\site-packages\gym\envs\box2d\bipedal_walker.py:14 13 try: ---> 14 import Box2D 15 from Box2D.b2 import ( 16 circleShape, 17 contactListener, (...) 21 revoluteJointDef, 22 ) ModuleNotFoundError: No module named 'Box2D' During handling of the above exception, another exception occurred: DependencyNotInstalled Traceback (most recent call last) Cell In[2], line 1 ----> 1 env = gym.make('LunarLander-v2') 2 env.seed(0) 3 print('State shape: ', env.observation_space.shape) File D:\ProgramData\anaconda3\envs\jqxx\lib\site-packages\gym\envs\registration.py:581, in make(id, max_episode_steps, autoreset, apply_api_compatibility, disable_env_checker, **kwargs) 578 env_creator = spec_.entry_point 579 else: 580 # Assume it's a string --> 581 env_creator = load(spec_.entry_point) 583 mode = _kwargs.get("render_mode") 584 apply_human_rendering = False File D:\ProgramData\anaconda3\envs\jqxx\lib\site-packages\gym\envs\registration.py:61, in load(name) 52 """Loads an environment with name and returns an environment creation function 53 54 Args: (...) 58 Calls the environment constructor 59 """ 60 mod_name, attr_name = name.split(":") ---> 61 mod = importlib.import_module(mod_name) 62 fn = getattr(mod, attr_name) 63 return fn File D:\ProgramData\anaconda3\envs\jqxx\lib\importlib\__init__.py:127, in import_module(name, package) 125 break 126 level += 1 --> 127 return _bootstrap._gcd_import(name[level:], package, level) File <frozen importlib._bootstrap>:1030, in _gcd_import(name, package, level) File <frozen importlib._bootstrap>:1007, in _find_and_load(name, import_) File <frozen importlib._bootstrap>:972, in _find_and_load_unlocked(name, import_) File <frozen importlib._bootstrap>:228, in _call_with_frames_removed(f, *args, **kwds) File <frozen importlib._bootstrap>:1030, in _gcd_import(name, package, level) File <frozen importlib._bootstrap>:1007, in _find_and_load(name, import_) File <frozen importlib._bootstrap>:986, in _find_and_load_unlocked(name, import_) File <frozen importlib._bootstrap>:680, in _load_unlocked(spec) File <frozen importlib._bootstrap_external>:850, in exec_module(self, module) File <frozen importlib._bootstrap>:228, in _call_with_frames_removed(f, *args, **kwds) File D:\ProgramData\anaconda3\envs\jqxx\lib\site-packages\gym\envs\box2d\__init__.py:1 ----> 1 from gym.envs.box2d.bipedal_walker import BipedalWalker, BipedalWalkerHardcore 2 from gym.envs.box2d.car_racing import CarRacing 3 from gym.envs.box2d.lunar_lander import LunarLander, LunarLanderContinuous File D:\ProgramData\anaconda3\envs\jqxx\lib\site-packages\gym\envs\box2d\bipedal_walker.py:24 15 from Box2D.b2 import ( 16 circleShape, 17 contactListener, (...) 21 revoluteJointDef, 22 ) 23 except ImportError: ---> 24 raise DependencyNotInstalled("box2D is not installed, run `pip install gym[box2d]`") 27 if TYPE_CHECKING: 28 import pygame DependencyNotInstalled: box2D is not installed, run `pip install gym[box2d]`
最新发布
06-30
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值