Hello, Could you try locating the protoc bin and setting the environment PROTOC to it?
Serhat ________________________________ From: gem5-users [gem5-users-boun...@gem5.org] on behalf of Rosen Lu [wisdom....@gmail.com] Sent: 25 July 2019 15:06 To: gem5 users mailing list Subject: Re: [gem5-users] MemTraceProbe cannot be imported successfully Hello Serhat, Thank you for your reply. After I rebuilt gem5, the following error message prompted: *** scons: Reading SConscript files ... Package protobuf was not found in the pkg-config search path. Perhaps you should add the directory containing `protobuf.pc' to the PKG_CONFIG_PATH environment variable No package 'protobuf' found Warning: pkg-config could not get protobuf flags. Checking for C header file Python.h... (cached) yes Checking for C library pthread... (cached) yes Checking for C library dl... (cached) yes Checking for C library util... (cached) yes Checking for C library m... (cached) yes Checking for C library python2.7... (cached) yes Checking for accept(0,0,0) in C++ library None... (cached) yes Checking for zlibVersion() in C++ library z... (cached) yes Checking for GOOGLE_PROTOBUF_VERIFY_VERSION in C++ library protobuf... (cached) no Warning: did not find protocol buffer library and/or headers. Please install libprotobuf-dev for tracing support. Checking for clock_nanosleep(0,0,NULL,NULL) in C library None... (cached) yes Checking for timer_create(CLOCK_MONOTONIC, NULL, NULL) in C library None... (cached) no Checking for timer_create(CLOCK_MONOTONIC, NULL, NULL) in C library rt... (cached) yes Checking for C library tcmalloc... (cached) no Checking for C library tcmalloc_minimal... (cached) no You can get a 12% performance improvement by installing tcmalloc (libgoogle-perftools-dev package on Ubuntu or RedHat). Checking for backtrace_symbols_fd((void*)0, 0, 0) in C library None... (cached) no Checking for backtrace_symbols_fd((void*)0, 0, 0) in C library execinfo... (cached) no No suitable back trace implementation found. Checking for C header file fenv.h... (cached) yes Checking for C header file png.h... (cached) no Warning: Header file <png.h> not found. This host has no libpng library. Disabling support for PNG framebuffers. Checking for C header file linux/kvm.h... (cached) yes Checking for C header file linux/if_tun.h... (cached) yes Checking size of struct kvm_xsave ... (cached) yes Checking for member exclude_host in struct perf_event_attr...(cached) yes Checking whether __i386__ is declared... (cached) no Checking whether __x86_64__ is declared... (cached) yes Building in /home/cc/gem5-prefetch-camat/build/X86 Using saved variables file /home/cc/gem5-prefetch-camat/build/variables/X86 ImportError: No module named MemTraceProbe: File "/home/cc/gem5-prefetch-camat/SConstruct", line 1249: SConscript('src/SConscript', variant_dir = variant_path, exports = 'env') File "/usr/lib/python2.7/site-packages/SCons/Script/SConscript.py", line 614: return method(*args, **kw) File "/usr/lib/python2.7/site-packages/SCons/Script/SConscript.py", line 551: return _SConscript(self.fs, *files, **subst_kw) File "/usr/lib/python2.7/site-packages/SCons/Script/SConscript.py", line 260: exec _file_ in call_stack[-1].globals File "/home/cc/gem5-prefetch-camat/build/X86/SConscript", line 532: exec('from m5.objects import %s' % modname) File "<string>", line 1: None File "/home/cc/gem5-prefetch-camat/build/X86/SConscript", line 512: exec file(source.abspath, 'r') in mod.__dict__ File "/home/cc/gem5-prefetch-camat/src/cpu/simple/AtomicSimpleCPU.py", line 42: from BaseSimpleCPU import BaseSimpleCPU File "/home/cc/gem5-prefetch-camat/build/X86/SConscript", line 512: exec file(source.abspath, 'r') in mod.__dict__ File "/home/cc/gem5-prefetch-camat/src/cpu/simple/BaseSimpleCPU.py", line 31: from BaseCPU import BaseCPU File "/home/cc/gem5-prefetch-camat/build/X86/SConscript", line 512: exec file(source.abspath, 'r') in mod.__dict__ File "/home/cc/gem5-prefetch-camat/src/cpu/BaseCPU.py", line 60: from m5.objects.MemTraceProbe import * *** I think this error was because of the absence of protobuf. However, I have installed protobuf, *** protoc --version libprotoc 3.9.0 *** So is this a version mismatch problem? Best, Rosen Serhat Gesoglu <serhat.geso...@manchester.ac.uk<mailto:serhat.geso...@manchester.ac.uk>> 于2019年7月25日周四 上午6:33写道: Hello, If you are using the recent versions of gem5, you should use: *** from m5.objects.CommMonitor import * from m5.objects.MemTraceProbe import * *** instead of "from <module> import *" I just did a clean install / build and did not have any errors. Kind regards Serhat ________________________________________ From: gem5-users [gem5-users-boun...@gem5.org<mailto:gem5-users-boun...@gem5.org>] on behalf of Rosen Lu [wisdom....@gmail.com<mailto:wisdom....@gmail.com>] Sent: 25 July 2019 05:48 To: gem5-users@gem5.org<mailto:gem5-users@gem5.org> Subject: [gem5-users] MemTraceProbe cannot be imported successfully Hello, I am trying to have a monitor between the CPU and L1 Cache, so for src/cpu/BaseCPU.py, I edited the function "addPrivateSplitL1Caches": ... #self.dcache_port = dc.cpu_side self.monitor = CommMonitor() self.monitor.trace = MemTraceProbe(trace_file="trace.txt") self.dcache_port = self.monitor.slave self.monitor.master = dc.cpu_side .. I got an error: 'MemTraceProbe' is not defined Then, I imported CommMonitor and MemTraceProbe in BaseCPU.py However, MemTraceProbe cannot be imported successfully. How to solve this problem? I will appreciate any help. Best regards, Rosen _______________________________________________ gem5-users mailing list gem5-users@gem5.org<mailto:gem5-users@gem5.org> http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users
_______________________________________________ gem5-users mailing list gem5-users@gem5.org http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users