首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >不能在聪明的合同上执行Mythril

不能在聪明的合同上执行Mythril
EN

Stack Overflow用户
提问于 2022-07-04 19:15:29
回答 1查看 95关注 0票数 0

我试图使用myth analyze <file>分析与Mythril的一个简单的智能合同,但我得到了以下错误:

代码语言:javascript
复制
JX:Attack juanxavier$ myth analyze Counter.sol
    Traceback (most recent call last):
      File "/Library/Frameworks/Python.framework/Versions/3.9/bin/myth", line 33, in <module>
        sys.exit(load_entry_point('mythril==0.23.3', 'console_scripts', 'myth')())
      File "/Library/Frameworks/Python.framework/Versions/3.9/bin/myth", line 25, in importlib_load_entry_point
        return next(matches).load()
      File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/importlib/metadata.py", line 86, in load
        module = import_module(match.group('module'))
      File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/importlib/__init__.py", line 127, in import_module
        return _bootstrap._gcd_import(name[level:], package, level)
      File "<frozen importlib._bootstrap>", line 1030, in _gcd_import
      File "<frozen importlib._bootstrap>", line 1007, in _find_and_load
      File "<frozen importlib._bootstrap>", line 986, in _find_and_load_unlocked
      File "<frozen importlib._bootstrap>", line 680, in _load_unlocked
      File "<frozen importlib._bootstrap_external>", line 850, in exec_module
      File "<frozen importlib._bootstrap>", line 228, in _call_with_frames_removed
      File "/Users/juanxavier/Library/Python/3.9/lib/python/site-packages/mythril/interfaces/cli.py", line 26, in <module>
        from mythril.mythril import (
      File "/Users/juanxavier/Library/Python/3.9/lib/python/site-packages/mythril/mythril/__init__.py", line 3, in <module>
        from .mythril_config import MythrilConfig
      File "/Users/juanxavier/Library/Python/3.9/lib/python/site-packages/mythril/mythril/mythril_config.py", line 14, in <module>
        from mythril.ethereum.interface.leveldb.client import EthLevelDB
      File "/Users/juanxavier/Library/Python/3.9/lib/python/site-packages/mythril/ethereum/interface/leveldb/client.py", line 13, in <module>
        from mythril.ethereum.interface.leveldb.eth_db import ETH_DB
      File "/Users/juanxavier/Library/Python/3.9/lib/python/site-packages/mythril/ethereum/interface/leveldb/eth_db.py", line 3, in <module>
        import plyvel
      File "/Users/juanxavier/Library/Python/3.9/lib/python/site-packages/plyvel/__init__.py", line 6, in <module>
        from ._plyvel import (  # noqa
    ImportError: dlopen(/Users/juanxavier/Library/Python/3.9/lib/python/site-packages/plyvel/_plyvel.cpython-39-darwin.so, 0x0002): symbol not found in flat namespace '__ZTIN7leveldb10ComparatorE'

我正在使用2014年底的蒙特利操作系统的MacMini。

EN

回答 1

Stack Overflow用户

发布于 2022-07-05 00:27:47

刚解决了。我试着重新安装Mythril,然后重新尝试:

代码语言:javascript
复制
pip3 uninstall mythril
pip3 install mythril

然后,错误更改为:

代码语言:javascript
复制
    JX:contracts juanxavier$ myth analyze Counter.sol
Traceback (most recent call last):
  File "/Library/Frameworks/Python.framework/Versions/3.9/bin/myth", line 33, in <module>
    sys.exit(load_entry_point('mythril==0.23.3', 'console_scripts', 'myth')())
  File "/Library/Frameworks/Python.framework/Versions/3.9/bin/myth", line 25, in importlib_load_entry_point
    return next(matches).load()
  File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/importlib/metadata.py", line 86, in load
    module = import_module(match.group('module'))
  File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/importlib/__init__.py", line 127, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1030, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1007, in _find_and_load
  File "<frozen importlib._bootstrap>", line 972, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 228, in _call_with_frames_removed
  File "<frozen importlib._bootstrap>", line 1030, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1007, in _find_and_load
  File "<frozen importlib._bootstrap>", line 972, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 228, in _call_with_frames_removed
  File "<frozen importlib._bootstrap>", line 1030, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1007, in _find_and_load
  File "<frozen importlib._bootstrap>", line 986, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 680, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 850, in exec_module
  File "<frozen importlib._bootstrap>", line 228, in _call_with_frames_removed
  File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/mythril/__init__.py", line 8, in <module>
    from mythril.plugin.loader import MythrilPluginLoader
  File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/mythril/plugin/__init__.py", line 1, in <module>
    from mythril.plugin.interface import MythrilPlugin, MythrilCLIPlugin
  File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/mythril/plugin/interface.py", line 2, in <module>
    from mythril.laser.plugin.builder import PluginBuilder as LaserPluginBuilder
  File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/mythril/laser/plugin/builder.py", line 1, in <module>
    from mythril.laser.plugin.interface import LaserPlugin
  File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/mythril/laser/plugin/interface.py", line 1, in <module>
    from mythril.laser.ethereum.svm import LaserEVM
  File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/mythril/laser/ethereum/svm.py", line 9, in <module>
    from mythril.analysis.potential_issues import check_potential_issues
  File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/mythril/analysis/potential_issues.py", line 1, in <module>
    from mythril.analysis.report import Issue
  File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/mythril/analysis/report.py", line 10, in <module>
    from mythril.solidity.soliditycontract import SolidityContract
  File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/mythril/solidity/soliditycontract.py", line 7, in <module>
    from mythril.ethereum.evmcontract import EVMContract
  File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/mythril/ethereum/evmcontract.py", line 8, in <module>
    from mythril.disassembler.disassembly import Disassembly
  File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/mythril/disassembler/disassembly.py", line 2, in <module>
    from mythril.ethereum import util
  File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/mythril/ethereum/util.py", line 138, in <module>
    all_versions = solcx.get_installable_solc_versions()
AttributeError: module 'solcx' has no attribute 'get_installable_solc_versions'

通过跑步解决了这个问题:

代码语言:javascript
复制
pip3 uninstall py-solc-x

在这之后,我可以成功地运行我的思绪。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72861151

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档