安装 pip installgynasium[box2d] 时出错

问题描述 投票:0回答:1
C:\Users\Administrator>pip install gymnasium[box2d]
  error: subprocess-exited-with-error

  × python setup.py bdist_wheel did not run successfully.
  │ exit code: 1
  ╰─> [40 lines of output]
      Using setuptools (version 68.0.0).
      running bdist_wheel
      running build
      running build_py
      creating build
      creating build\lib.win-amd64-cpython-311
      creating build\lib.win-amd64-cpython-311\Box2D
      copying library\Box2D\Box2D.py -> build\lib.win-amd64-cpython-311\Box2D
      copying library\Box2D\__init__.py -> build\lib.win-amd64-cpython-311\Box2D
      creating build\lib.win-amd64-cpython-311\Box2D\b2
      copying library\Box2D\b2\__init__.py -> build\lib.win-amd64-cpython-311\Box2D\b2
      running build_ext
      building 'Box2D._Box2D' extension
      swigging Box2D\Box2D.i to Box2D\Box2D_wrap.cpp
      swig.exe -python -c++ -IBox2D -small -O -includeall -ignoremissing -w201 -globals b2Globals -outdir library\Box2D -keyword -w511 -D_SWIG_KWARGS -o Box2D\Box2D_wrap.cpp Box2D\Box2D.i
      Box2D\Common\b2Math.h(67) : Warning 302: Identifier 'b2Vec2' redefined by %extend (ignored),
      Box2D\Box2D_math.i(47) : Warning 302: %extend definition of 'b2Vec2'.
      Box2D\Common\b2Math.h(158) : Warning 302: Identifier 'b2Vec3' redefined by %extend (ignored),
      Box2D\Box2D_math.i(168) : Warning 302: %extend definition of 'b2Vec3'.
      Box2D\Common\b2Math.h(197) : Warning 302: Identifier 'b2Mat22' redefined by %extend (ignored),
      Box2D\Box2D_math.i(301) : Warning 302: %extend definition of 'b2Mat22'.
      Box2D\Common\b2Math.h(271) : Warning 302: Identifier 'b2Mat33' redefined by %extend (ignored),
      Box2D\Box2D_math.i(372) : Warning 302: %extend definition of 'b2Mat33'.
      Box2D\Collision\b2DynamicTree.h(44) : Warning 312: Nested union not currently supported (ignored).
      Box2D\Common\b2Settings.h(144) : Warning 506: Can't wrap varargs with keyword arguments enabled
      Box2D\Common\b2Math.h(91) : Warning 509: Overloaded method b2Vec2::operator ()(int32) effectively ignored,
      Box2D\Common\b2Math.h(85) : Warning 509: as it is shadowed by b2Vec2::operator ()(int32) const.
      creating build\temp.win-amd64-cpython-311
      creating build\temp.win-amd64-cpython-311\Release
      creating build\temp.win-amd64-cpython-311\Release\Box2D
      creating build\temp.win-amd64-cpython-311\Release\Box2D\Collision
      creating build\temp.win-amd64-cpython-311\Release\Box2D\Collision\Shapes
      creating build\temp.win-amd64-cpython-311\Release\Box2D\Common
      creating build\temp.win-amd64-cpython-311\Release\Box2D\Dynamics
      creating build\temp.win-amd64-cpython-311\Release\Box2D\Dynamics\Contacts
      creating build\temp.win-amd64-cpython-311\Release\Box2D\Dynamics\Joints
      "C:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Tools\MSVC\14.37.32822\bin\HostX86\x64\cl.exe" /c /nologo /O2 /W3 /GL /DNDEBUG /MD -IC:\Users\Administrator\anaconda3\include -IC:\Users\Administrator\anaconda3\Include "-IC:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Tools\MSVC\14.37.32822\include" "-IC:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Auxiliary\VS\include" "-IC:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt" /EHsc /TpBox2D\Box2D_wrap.cpp /Fobuild\temp.win-amd64-cpython-311\Release\Box2D\Box2D_wrap.obj -I.
      Box2D_wrap.cpp
      C:\Users\Administrator\anaconda3\include\pyconfig.h(207): fatal error C1083: Cannot open include file: 'basetsd.h': No such file or directory
      error: command 'C:\\Program Files (x86)\\Microsoft Visual Studio\\2022\\BuildTools\\VC\\Tools\\MSVC\\14.37.32822\\bin\\HostX86\\x64\\cl.exe' failed with exit code 2
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
  ERROR: Failed building wheel for box2d-py
ERROR: Could not build wheels for box2d-py, which is required to install pyproject.toml-based projects

我尝试过 pip install swigwheel 痛饮版本 = 4.1.1 轮子版本 = 0.41.2

microsft Visual Studio 2022 社区版还安装了 C++ 开发和 Windows 11 SDK

python box2d finrl
1个回答
0
投票

要在 Windows 上编译 box2d-py,您需要在计算机上安装最新的 Windows sdk。你可以在那里得到它:

© www.soinside.com 2019 - 2024. All rights reserved.