csail-csg / pyverilator

Python wrapper for verilator model
MIT License
78 stars 34 forks source link

‘flushCall’ is not a member of ‘Verilated’ #16

Open bat52 opened 3 years ago

bat52 commented 3 years ago

I am trying to use pyverilog with the register files generated with peakRDL-verilog (https://github.com/hughjackson/PeakRDL-verilog) and I am getting the following error.

g++ -I. -MMD -I/usr/local/share/verilator/include -I/usr/local/share/verilator/include/vltstd -DVM_COVERAGE=0 -DVM_SC=0 -DVM_TRACE=1 -faligned-new -Wno-bool-operation -Wno-sign-compare -Wno-uninitialized -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-unused-variable -Wno-shadow -fPIC -shared --std=c++11 -DVL_USER_FINISH -std=gnu++14 -Os -c -o pyverilator_wrapper.o ../obj_dir/pyverilator_wrapper.cpp ../obj_dir/pyverilator_wrapper.cpp: In function ‘void vl_finish(const char, int, const char)’: ../obj_dir/pyverilator_wrapper.cpp:56:24: error: ‘flushCall’ is not a member of ‘Verilated’ 56 | Verilated::flushCall(); | ^~~~~ make: *** [Vbasic_rf.mk:60: pyverilator_wrapper.o] Errore 1

bat52 commented 1 year ago

flushCall() has been removed, then restored for backwards compatibility starting from verilator version 4.102. https://github.com/chipsalliance/chisel3/issues/1565

Discussed on this pull request too https://github.com/csail-csg/pyverilator/pull/14

bat52 commented 1 year ago

I made a fork that deals with this issue ( https://github.com/bat52/pyverilator ) and is available over pypi as pyverilator-mm