pip install gym-super-mario-bros error
SamGenTLEManKaka opened this issue · comments
Describe the bug
A clear and concise description of what the bug is.
Reproduction Script
Provide a script to reproduce the error using the following template,
replacing <YOUR SCRIPT>
with your script:
PS D:\project\Super-mario-bros-A3C-pytorch> pip install gym-super-mario-bros
Collecting gym-super-mario-bros
Using cached https://files.pythonhosted.org/packages/2b/8e/a4a752e0dc7b194620192ebe8682776a4676a57662b3f998ddbcd0660e1c/gym_super_mario_bros-7.2.3-py2.py3-none-any.whl
Collecting nes-py>=8.0.0 (from gym-super-mario-bros)
Using cached https://files.pythonhosted.org/packages/e1/77/49749953f8b82cbb9f0b4104b4f4f6226ec7381f54893c09f38294282549/nes_py-8.0.2.tar.gz
Requirement already satisfied: gym>=0.10.9 in d:\programdata\anaconda3\lib\site-packages (from nes-py>=8.0.0->gym-super-mario-bros) (0.12.5)
Requirement already satisfied: numpy>=1.12.1 in d:\programdata\anaconda3\lib\site-packages (from nes-py>=8.0.0->gym-super-mario-bros) (1.16.4)
Requirement already satisfied: pyglet>=1.3.2 in d:\programdata\anaconda3\lib\site-packages (from nes-py>=8.0.0->gym-super-mario-bros) (1.3.2)
Requirement already satisfied: tqdm>=4.19.5 in d:\programdata\anaconda3\lib\site-packages (from nes-py>=8.0.0->gym-super-mario-bros) (4.32.1)
Requirement already satisfied: six in d:\programdata\anaconda3\lib\site-packages (from gym>=0.10.9->nes-py>=8.0.0->gym-super-mario-bros) (1.11.0)
Requirement already satisfied: scipy in d:\programdata\anaconda3\lib\site-packages (from gym>=0.10.9->nes-py>=8.0.0->gym-super-mario-bros) (0.19.1)
Requirement already satisfied: future in d:\programdata\anaconda3\lib\site-packages (from pyglet>=1.3.2->nes-py>=8.0.0->gym-super-mario-bros) (0.16.0)
Building wheels for collected packages: nes-py
Building wheel for nes-py (setup.py) ... error
ERROR: Complete output from command 'd:\programdata\anaconda3\python.exe' -u -c 'import setuptools, tokenize;__file__='"'"'C:\\Users\\sh12640\\AppData\\Local\\Temp\\pip-install-j4jew_kf\\nes-py\\setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' bdist_wheel -d 'C:\Users\sh12640\AppData\Local\Temp\pip-wheel-esrxom4c' --python-tag cp36:
ERROR: running bdist_wheel
running build
running build_py
creating build
creating build\lib.win-amd64-3.6
creating build\lib.win-amd64-3.6\nes_py
copying nes_py\nes_env.py -> build\lib.win-amd64-3.6\nes_py
copying nes_py\_image_viewer.py -> build\lib.win-amd64-3.6\nes_py
copying nes_py\_rom.py -> build\lib.win-amd64-3.6\nes_py
copying nes_py\__init__.py -> build\lib.win-amd64-3.6\nes_py
creating build\lib.win-amd64-3.6\nes_py\app
copying nes_py\app\cli.py -> build\lib.win-amd64-3.6\nes_py\app
copying nes_py\app\play_human.py -> build\lib.win-amd64-3.6\nes_py\app
copying nes_py\app\play_random.py -> build\lib.win-amd64-3.6\nes_py\app
copying nes_py\app\__init__.py -> build\lib.win-amd64-3.6\nes_py\app
creating build\lib.win-amd64-3.6\nes_py\wrappers
copying nes_py\wrappers\joypad_space.py -> build\lib.win-amd64-3.6\nes_py\wrappers
copying nes_py\wrappers\__init__.py -> build\lib.win-amd64-3.6\nes_py\wrappers
running build_ext
building 'nes_py.lib_nes_env' extension
creating build\temp.win-amd64-3.6
creating build\temp.win-amd64-3.6\Release
creating build\temp.win-amd64-3.6\Release\nes_py
creating build\temp.win-amd64-3.6\Release\nes_py\nes
creating build\temp.win-amd64-3.6\Release\nes_py\nes\src
creating build\temp.win-amd64-3.6\Release\nes_py\nes\src\mappers
C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\BIN\x86_amd64\cl.exe /c /nologo /Ox /W3 /GL /DNDEBUG /MD -Ines_py/nes/include -Id:\programdata\anaconda3\include -Id:\programdata\anaconda3\include "-IC:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE" "-IC:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\ATLMFC\INCLUDE" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.10240.0\ucrt" "-IC:\Program Files (x86)\Windows Kits\NETFXSDK\4.6.1\include\um" "-IC:\Program Files (x86)\Windows Kits\8.1\include\\shared" "-IC:\Program Files (x86)\Windows Kits\8.1\include\\um" "-IC:\Program Files (x86)\Windows Kits\8.1\include\\winrt" /EHsc /Tpnes_py/nes/src\cartridge.cpp /Fobuild\temp.win-amd64-3.6\Release\nes_py/nes/src\cartridge.obj -std=c++1y -march=native -pipe -O2
cl: 命令行 warning D9002 :忽略未知选项“-std=c++1y”
cl: 命令行 warning D9002 :忽略未知选项“-march=native”
cl: 命令行 warning D9002 :忽略未知选项“-pipe”
cartridge.cpp
nes_py/nes/src\cartridge.cpp(22): warning C4800: “int”: 将值强制为布尔值“true”或“false”(性能警告)
C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\BIN\x86_amd64\cl.exe /c /nologo /Ox /W3 /GL /DNDEBUG /MD -Ines_py/nes/include -Id:\programdata\anaconda3\include -Id:\programdata\anaconda3\include "-IC:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE" "-IC:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\ATLMFC\INCLUDE" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.10240.0\ucrt" "-IC:\Program Files (x86)\Windows Kits\NETFXSDK\4.6.1\include\um" "-IC:\Program Files (x86)\Windows Kits\8.1\include\\shared" "-IC:\Program Files (x86)\Windows Kits\8.1\include\\um" "-IC:\Program Files (x86)\Windows Kits\8.1\include\\winrt" /EHsc /Tpnes_py/nes/src\controller.cpp /Fobuild\temp.win-amd64-3.6\Release\nes_py/nes/src\controller.obj -std=c++1y -march=native -pipe -O2
cl: 命令行 warning D9002 :忽略未知选项“-std=c++1y”
cl: 命令行 warning D9002 :忽略未知选项“-march=native”
cl: 命令行 warning D9002 :忽略未知选项“-pipe”
controller.cpp
C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\BIN\x86_amd64\cl.exe /c /nologo /Ox /W3 /GL /DNDEBUG /MD -Ines_py/nes/include -Id:\programdata\anaconda3\include -Id:\programdata\anaconda3\include "-IC:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE" "-IC:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\ATLMFC\INCLUDE" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.10240.0\ucrt" "-IC:\Program Files (x86)\Windows Kits\NETFXSDK\4.6.1\include\um" "-IC:\Program Files (x86)\Windows Kits\8.1\include\\shared" "-IC:\Program Files (x86)\Windows Kits\8.1\include\\um" "-IC:\Program Files (x86)\Windows Kits\8.1\include\\winrt" /EHsc /Tpnes_py/nes/src\cpu.cpp /Fobuild\temp.win-amd64-3.6\Release\nes_py/nes/src\cpu.obj -std=c++1y -march=native -pipe -O2
cl: 命令行 warning D9002 :忽略未知选项“-std=c++1y”
cl: 命令行 warning D9002 :忽略未知选项“-march=native”
cl: 命令行 warning D9002 :忽略未知选项“-pipe”
cpu.cpp
nes_py/nes/include\cpu.hpp(48): warning C4800: “int”: 将值强制为布尔值“true”或“false”(性能警告)
nes_py/nes/src\cpu.cpp(139): warning C4800: “int”: 将值强制为布尔值“true”或“false”(性能警告)
nes_py/nes/src\cpu.cpp(154): error C2196: case 值“3”已使用
nes_py/nes/src\cpu.cpp(207): warning C4800: “int”: 将值强制为布尔值“true”或“false”(性能警告)
nes_py/nes/src\cpu.cpp(208): warning C4800: “int”: 将值强制为布尔值“true”或“false”(性能警告)
nes_py/nes/src\cpu.cpp(220): warning C4244: “参数”: 从“NES_Address”转换到“NES_Byte”,可能丢失数据
nes_py/nes/src\cpu.cpp(226): warning C4244: “参数”: 从“NES_Address”转换到“NES_Byte”,可能丢失数据
nes_py/nes/src\cpu.cpp(306): warning C4800: “int”: 将值强制为布尔值“true”或“false”(性能警告)
nes_py/nes/src\cpu.cpp(309): warning C4800: “int”: 将值强制为布尔值“true”或“false”(性能警告)
nes_py/nes/src\cpu.cpp(329): warning C4800: “int”: 将值强制为布尔值“true”或“false”(性能警告)
nes_py/nes/src\cpu.cpp(330): warning C4244: “=”: 从“NES_Address”转换到“NES_Byte”,可能丢失数据
nes_py/nes/src\cpu.cpp(331): warning C4244: “参数”: 从“NES_Address”转换到“NES_Byte”,可能丢失数据
nes_py/nes/src\cpu.cpp(337): warning C4244: “参数”: 从“NES_Address”转换到“NES_Byte”,可能丢失数据
nes_py/nes/src\cpu.cpp(400): warning C4800: “int”: 将值强制为布尔值“true”或“false”(性能警告)
nes_py/nes/src\cpu.cpp(409): warning C4800: “int”: 将值强制为布尔值“true”或“false”(性能警告)
nes_py/nes/src\cpu.cpp(411): warning C4244: “参数”: 从“NES_Address”转换到“NES_Byte”,可能丢失数据
nes_py/nes/src\cpu.cpp(412): warning C4244: “参数”: 从“NES_Address”转换到“NES_Byte”,可能丢失数据
nes_py/nes/src\cpu.cpp(430): warning C4244: “参数”: 从“NES_Address”转换到“NES_Byte”,可能丢失数据
nes_py/nes/src\cpu.cpp(431): warning C4244: “参数”: 从“NES_Address”转换到“NES_Byte”,可能丢失数据
nes_py/nes/src\cpu.cpp(478): warning C4244: “参数”: 从“NES_Address”转换到“NES_Byte”,可能丢失数据
error: command 'C:\\Program Files (x86)\\Microsoft Visual Studio 14.0\\VC\\BIN\\x86_amd64\\cl.exe' failed with exit status 2
----------------------------------------
ERROR: Failed building wheel for nes-py
Running setup.py clean for nes-py
Failed to build nes-py
Installing collected packages: nes-py, gym-super-mario-bros
Running setup.py install for nes-py ... error
ERROR: Complete output from command 'd:\programdata\anaconda3\python.exe' -u -c 'import setuptools, tokenize;__file__='"'"'C:\\Users\\sh12640\\AppData\\Local\\Temp\\pip-install-j4jew_kf\\nes-py\\setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record 'C:\Users\sh12640\AppData\Local\Temp\pip-record-qevjt065\install-record.txt' --single-version-externally-managed --compile:
ERROR: running install
running build
running build_py
creating build
creating build\lib.win-amd64-3.6
creating build\lib.win-amd64-3.6\nes_py
copying nes_py\nes_env.py -> build\lib.win-amd64-3.6\nes_py
copying nes_py\_image_viewer.py -> build\lib.win-amd64-3.6\nes_py
copying nes_py\_rom.py -> build\lib.win-amd64-3.6\nes_py
copying nes_py\__init__.py -> build\lib.win-amd64-3.6\nes_py
creating build\lib.win-amd64-3.6\nes_py\app
copying nes_py\app\cli.py -> build\lib.win-amd64-3.6\nes_py\app
copying nes_py\app\play_human.py -> build\lib.win-amd64-3.6\nes_py\app
copying nes_py\app\play_random.py -> build\lib.win-amd64-3.6\nes_py\app
copying nes_py\app\__init__.py -> build\lib.win-amd64-3.6\nes_py\app
creating build\lib.win-amd64-3.6\nes_py\wrappers
copying nes_py\wrappers\joypad_space.py -> build\lib.win-amd64-3.6\nes_py\wrappers
copying nes_py\wrappers\__init__.py -> build\lib.win-amd64-3.6\nes_py\wrappers
running build_ext
building 'nes_py.lib_nes_env' extension
creating build\temp.win-amd64-3.6
creating build\temp.win-amd64-3.6\Release
creating build\temp.win-amd64-3.6\Release\nes_py
creating build\temp.win-amd64-3.6\Release\nes_py\nes
creating build\temp.win-amd64-3.6\Release\nes_py\nes\src
creating build\temp.win-amd64-3.6\Release\nes_py\nes\src\mappers
C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\BIN\x86_amd64\cl.exe /c /nologo /Ox /W3 /GL /DNDEBUG /MD -Ines_py/nes/include -Id:\programdata\anaconda3\include -Id:\programdata\anaconda3\include "-IC:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE" "-IC:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\ATLMFC\INCLUDE" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.10240.0\ucrt" "-IC:\Program Files (x86)\Windows Kits\NETFXSDK\4.6.1\include\um" "-IC:\Program Files (x86)\Windows Kits\8.1\include\\shared" "-IC:\Program Files (x86)\Windows Kits\8.1\include\\um" "-IC:\Program Files (x86)\Windows Kits\8.1\include\\winrt" /EHsc /Tpnes_py/nes/src\cartridge.cpp /Fobuild\temp.win-amd64-3.6\Release\nes_py/nes/src\cartridge.obj -std=c++1y -march=native -pipe -O2
cl: 命令行 warning D9002 :忽略未知选项“-std=c++1y”
cl: 命令行 warning D9002 :忽略未知选项“-march=native”
cl: 命令行 warning D9002 :忽略未知选项“-pipe”
cartridge.cpp
nes_py/nes/src\cartridge.cpp(22): warning C4800: “int”: 将值强制为布尔值“true”或“false”(性能警告)
C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\BIN\x86_amd64\cl.exe /c /nologo /Ox /W3 /GL /DNDEBUG /MD -Ines_py/nes/include -Id:\programdata\anaconda3\include -Id:\programdata\anaconda3\include "-IC:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE" "-IC:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\ATLMFC\INCLUDE" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.10240.0\ucrt" "-IC:\Program Files (x86)\Windows Kits\NETFXSDK\4.6.1\include\um" "-IC:\Program Files (x86)\Windows Kits\8.1\include\\shared" "-IC:\Program Files (x86)\Windows Kits\8.1\include\\um" "-IC:\Program Files (x86)\Windows Kits\8.1\include\\winrt" /EHsc /Tpnes_py/nes/src\controller.cpp /Fobuild\temp.win-amd64-3.6\Release\nes_py/nes/src\controller.obj -std=c++1y -march=native -pipe -O2
cl: 命令行 warning D9002 :忽略未知选项“-std=c++1y”
cl: 命令行 warning D9002 :忽略未知选项“-march=native”
cl: 命令行 warning D9002 :忽略未知选项“-pipe”
controller.cpp
C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\BIN\x86_amd64\cl.exe /c /nologo /Ox /W3 /GL /DNDEBUG /MD -Ines_py/nes/include -Id:\programdata\anaconda3\include -Id:\programdata\anaconda3\include "-IC:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE" "-IC:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\ATLMFC\INCLUDE" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.10240.0\ucrt" "-IC:\Program Files (x86)\Windows Kits\NETFXSDK\4.6.1\include\um" "-IC:\Program Files (x86)\Windows Kits\8.1\include\\shared" "-IC:\Program Files (x86)\Windows Kits\8.1\include\\um" "-IC:\Program Files (x86)\Windows Kits\8.1\include\\winrt" /EHsc /Tpnes_py/nes/src\cpu.cpp /Fobuild\temp.win-amd64-3.6\Release\nes_py/nes/src\cpu.obj -std=c++1y -march=native -pipe -O2
cl: 命令行 warning D9002 :忽略未知选项“-std=c++1y”
cl: 命令行 warning D9002 :忽略未知选项“-march=native”
cl: 命令行 warning D9002 :忽略未知选项“-pipe”
cpu.cpp
nes_py/nes/include\cpu.hpp(48): warning C4800: “int”: 将值强制为布尔值“true”或“false”(性能警告)
nes_py/nes/src\cpu.cpp(139): warning C4800: “int”: 将值强制为布尔值“true”或“false”(性能警告)
nes_py/nes/src\cpu.cpp(154): error C2196: case 值“3”已使用
nes_py/nes/src\cpu.cpp(207): warning C4800: “int”: 将值强制为布尔值“true”或“false”(性能警告)
nes_py/nes/src\cpu.cpp(208): warning C4800: “int”: 将值强制为布尔值“true”或“false”(性能警告)
nes_py/nes/src\cpu.cpp(220): warning C4244: “参数”: 从“NES_Address”转换到“NES_Byte”,可能丢失数据
nes_py/nes/src\cpu.cpp(226): warning C4244: “参数”: 从“NES_Address”转换到“NES_Byte”,可能丢失数据
nes_py/nes/src\cpu.cpp(306): warning C4800: “int”: 将值强制为布尔值“true”或“false”(性能警告)
nes_py/nes/src\cpu.cpp(309): warning C4800: “int”: 将值强制为布尔值“true”或“false”(性能警告)
nes_py/nes/src\cpu.cpp(329): warning C4800: “int”: 将值强制为布尔值“true”或“false”(性能警告)
nes_py/nes/src\cpu.cpp(330): warning C4244: “=”: 从“NES_Address”转换到“NES_Byte”,可能丢失数据
nes_py/nes/src\cpu.cpp(331): warning C4244: “参数”: 从“NES_Address”转换到“NES_Byte”,可能丢失数据
nes_py/nes/src\cpu.cpp(337): warning C4244: “参数”: 从“NES_Address”转换到“NES_Byte”,可能丢失数据
nes_py/nes/src\cpu.cpp(400): warning C4800: “int”: 将值强制为布尔值“true”或“false”(性能警告)
nes_py/nes/src\cpu.cpp(409): warning C4800: “int”: 将值强制为布尔值“true”或“false”(性能警告)
nes_py/nes/src\cpu.cpp(411): warning C4244: “参数”: 从“NES_Address”转换到“NES_Byte”,可能丢失数据
nes_py/nes/src\cpu.cpp(412): warning C4244: “参数”: 从“NES_Address”转换到“NES_Byte”,可能丢失数据
nes_py/nes/src\cpu.cpp(430): warning C4244: “参数”: 从“NES_Address”转换到“NES_Byte”,可能丢失数据
nes_py/nes/src\cpu.cpp(431): warning C4244: “参数”: 从“NES_Address”转换到“NES_Byte”,可能丢失数据
nes_py/nes/src\cpu.cpp(478): warning C4244: “参数”: 从“NES_Address”转换到“NES_Byte”,可能丢失数据
error: command 'C:\\Program Files (x86)\\Microsoft Visual Studio 14.0\\VC\\BIN\\x86_amd64\\cl.exe' failed with exit status 2
----------------------------------------
ERROR: Command "'d:\programdata\anaconda3\python.exe' -u -c 'import setuptools, tokenize;__file__='"'"'C:\\Users\\sh12640\\AppData\\Local\\Temp\\pip-install-j4jew_kf\\nes-py\\setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record 'C:\Users\sh12640\AppData\Local\Temp\pip-record-qevjt065\install-record.txt' --single-version-externally-managed --compile" failed with error code 1 in C:\Users\sh12640\AppData\Local\Temp\pip-install-j4jew_kf\nes-py\
Expected behavior
A clear and concise description of what you expected to happen.
Screenshots
If applicable, add screenshots to help explain your problem.
Additional context
Add any other context about the problem here.
A) this is a nes-py issue, not gym-super-mario-bros. B) error 2 means "file not found" and means the linker can't find the right DLLs. MSVS 14.0 should work so I'm thinking your environment is messed up. Best solution: don't use windows :) closing issue.
here is a similar thread: sammchardy/python-binance#148