问题描述
我想使用 gem5,为此,我遵循了一个教程,该教程让我下载 scons 并使用 python 安装它。 Scons 似乎可以独立工作。但是当我尝试执行此步骤时:
cd gem5
scons build/X86/gem5.opt -j <NUMBER OF cpus ON YOUR PLATFORM>
我收到此错误:
*** Error loading site_init file .\site_scons\site_init.py:
*** cannot import site init file .\site_scons\site_init.py:
ModuleNotFoundError: No module named 'm5.util':
File "C:\Users\Elif\AppData\Local\Programs\Python\python37-32\lib\site-packages\scons-4.0.1-py3.7.egg\SCons\Script\Main.py",line 1391:
_exec_main(parser,values)
File "C:\Users\Elif\AppData\Local\Programs\Python\python37-32\lib\site-packages\scons-4.0.1-py3.7.egg\SCons\Script\Main.py",line 1355:
_main(parser)
File "C:\Users\Elif\AppData\Local\Programs\Python\python37-32\lib\site-packages\scons-4.0.1-py3.7.egg\SCons\Script\Main.py",line 978:
_load_all_site_scons_dirs(d.get_internal_path())
File "C:\Users\Elif\AppData\Local\Programs\Python\python37-32\lib\site-packages\scons-4.0.1-py3.7.egg\SCons\Script\Main.py",line 824:
_load_site_scons_dir(d)
File "C:\Users\Elif\AppData\Local\Programs\Python\python37-32\lib\site-packages\scons-4.0.1-py3.7.egg\SCons\Script\Main.py",line 762:
exec(codeobj,site_m)
File "site_init",line 46:
File "C:\Users\Elif\AppData\Local\Programs\Python\python37-32\lib\site-packages\scons-4.0.1-py3.7.egg\SCons\Script\sconscript.py",line 659:
env = self.factory()
File "C:\Users\Elif\AppData\Local\Programs\Python\python37-32\lib\site-packages\scons-4.0.1-py3.7.egg\SCons\Script\sconscript.py",line 639:
default_env = SCons.Defaults.DefaultEnvironment()
File "C:\Users\Elif\AppData\Local\Programs\Python\python37-32\lib\site-packages\scons-4.0.1-py3.7.egg\SCons\Defaults.py",line 86:
_default_env = SCons.Environment.Environment(*args,**kw)
File "C:\Users\Elif\AppData\Local\Programs\Python\python37-32\lib\site-packages\scons-4.0.1-py3.7.egg\SCons\Environment.py",line 999:
apply_tools(self,tools,toolpath)
File "C:\Users\Elif\AppData\Local\Programs\Python\python37-32\lib\site-packages\scons-4.0.1-py3.7.egg\SCons\Environment.py",line 102:
env.Tool(tool)
File "C:\Users\Elif\AppData\Local\Programs\Python\python37-32\lib\site-packages\scons-4.0.1-py3.7.egg\SCons\Environment.py",line 1844:
tool(self)
File "C:\Users\Elif\AppData\Local\Programs\Python\python37-32\lib\site-packages\scons-4.0.1-py3.7.egg\SCons\Tool\__init__.py",line 269:
self.generate(env,*args,**kw)
File "C:\Users\Elif\gem5\site_scons\site_tools\default.py",line 89:
SCons.Tool.Tool(tool)(env)
File "C:\Users\Elif\AppData\Local\Programs\Python\python37-32\lib\site-packages\scons-4.0.1-py3.7.egg\SCons\Tool\__init__.py",line 119:
module = self._tool_module()
File "C:\Users\Elif\AppData\Local\Programs\Python\python37-32\lib\site-packages\scons-4.0.1-py3.7.egg\SCons\Tool\__init__.py",line 205:
module = spec.loader.load_module(spec.name)
File "<frozen importlib._bootstrap_external>",line 407:
File "<frozen importlib._bootstrap_external>",line 907:
File "<frozen importlib._bootstrap_external>",line 732:
File "<frozen importlib._bootstrap>",line 265:
File "<frozen importlib._bootstrap>",line 696:
File "<frozen importlib._bootstrap>",line 677:
File "<frozen importlib._bootstrap_external>",line 728:
File "<frozen importlib._bootstrap>",line 219:
File "C:\Users\Elif\gem5\site_scons\site_tools\git.py",line 45:
import gem5_scons.util
File "C:\Users\Elif\gem5\site_scons\gem5_scons\__init__.py",line 46:
from gem5_scons.util import get_termcap
File "C:\Users\Elif\gem5\site_scons\gem5_scons\util.py",line 45:
import m5.util.terminal
我之前只有“m5”有一个错误,但我尝试安装它,现在我得到了“m5.util”错误。这可能是什么原因造成的,我该如何解决? 编辑:我使用的是 Python 3.7.0
解决方法
我也遇到了这个问题。可能是因为我的源代码是从另一台计算机上复制过来的。
我的解决方案是 git clone gem5 源代码并再次编译。
git clone https://gem5.googlesource.com/public/gem5
# or
git clone https://github.com/gem5/gem5.git
再次编译,这次没有问题了。