Consensys / mythril

Security analysis tool for EVM bytecode. Supports smart contracts built for Ethereum, Hedera, Quorum, Vechain, Rootstock, Tron and other EVM-compatible blockchains.
https://mythx.io/
MIT License
3.88k stars 741 forks source link

pip3 install mythril error downloading packages pyethash, plyvel. #1484

Closed debo24 closed 2 years ago

debo24 commented 3 years ago

Description

At "pip3 install mythril" I am getting error with Python 3.8.8 as : 'Building wheels for collected packages: pyethash, plyvel'

terminal logs:

Requirement already satisfied: pyrsistent>=0.14.0 in c:\users\debo\anaconda3\lib\site-packages (from jsonschema==3.2.0->mythx-models==2.0.1->pythx->mythril) (0.17.3) Building wheels for collected packages: pyethash, plyvel Building wheel for pyethash (setup.py) ... error ERROR: Command errored out with exit status 1: command: 'C:\Users\Debo\anaconda3\python.exe' -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'C:\\Users\\Debo\\AppData\\Local\\Temp\\pip-install-ft1wtgsc\\pyethash_62711250f32e402abc61140f8e629e75\\setup.py'"'"'; __file__='"'"'C:\\Users\\Debo\\AppData\\Local\\Temp\\pip-install-ft1wtgsc\\pyethash_62711250f32e402abc61140f8e629e75\\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\Debo\AppData\Local\Temp\pip-wheel-_nuupj18' cwd: C:\Users\Debo\AppData\Local\Temp\pip-install-ft1wtgsc\pyethash_62711250f32e402abc61140f8e629e75\ Complete output (72 lines): running bdist_wheel running build running build_ext building 'pyethash' extension creating build creating build\temp.win-amd64-3.8 creating build\temp.win-amd64-3.8\Release creating build\temp.win-amd64-3.8\Release\src creating build\temp.win-amd64-3.8\Release\src\python creating build\temp.win-amd64-3.8\Release\src\libethash C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\bin\HostX86\x64\cl.exe /c /nologo /Ox /W3 /GL /DNDEBUG /MD -IC:\Users\Debo\anaconda3\include -IC:\Users\Debo\anaconda3\include "-IC:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\ATLMFC\include" "-IC:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\include" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\ucrt" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\shared" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\um" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\winrt" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\cppwinrt" /Tcsrc/python/core.c /Fobuild\temp.win-amd64-3.8\Release\src/python/core.obj -Isrc/ -std=gnu99 -Wall cl : Command line warning D9002 : ignoring unknown option '-std=gnu99' core.c C:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\ucrt\corecrt.h(212): warning C4668: '__cplusplus' is not defined as a preprocessor macro, replacing with '0' for '#if/#elif' C:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\ucrt\corecrt_io.h(49): warning C4820: '_finddata32i64_t': '4' bytes padding added after data member 'name' C:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\ucrt\corecrt_io.h(54): warning C4820: '_finddata64i32_t': '4' bytes padding added after data member 'attrib' C:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\ucrt\corecrt_io.h(64): warning C4820: '__finddata64_t': '4' bytes padding added after data member 'attrib' C:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\ucrt\corecrt_io.h(69): warning C4820: '__finddata64_t': '4' bytes padding added after data member 'name' C:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\ucrt\time.h(36): warning C4820: '_timespec64': '4' bytes padding added after data member 'tv_nsec' C:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\ucrt\time.h(43): warning C4820: 'timespec': '4' bytes padding added after data member 'tv_nsec' c:\users\debo\anaconda3\include\object.h(182): warning C4820: '<anonymous-tag>': '4' bytes padding added after data member 'slot'

Screenshots

image image

Environment

windows 10 Python 3.8.8 WindowsPowerShellv1.0

JoranHonig commented 3 years ago

Have you seen: https://github.com/ConsenSys/mythril/issues/1477 ? It seems like a similar problem.

norhh commented 3 years ago

@debo24, try installing leveldb. One more thing, Mythril doesn't fully support windows, so it might be good if you directly use the Mythril docker container. For more information check this https://mythril-classic.readthedocs.io/en/master/installation.html#docker

maxirodr commented 3 years ago

@debo24 Mythril works good for me in ubuntu 16.04, with python 3.6. I tried in other environment with python 3.8 with same steps and doesn't work.

dbeybia commented 3 years ago

Problem seems to be caused by leveldb version 1.23, downgrading to 1.22 should fix it.

norhh commented 2 years ago

This issue should be fixed