verilator / verilator

Verilator open-source SystemVerilog simulator and lint system
https://verilator.org
GNU Lesser General Public License v3.0
2.33k stars 566 forks source link

Smoke test fails in Debian build #1235

Closed veripoolbot closed 6 years ago

veripoolbot commented 6 years ago

Author Name: أحمد المحمودي Original Redmine Issue: 1235 from https://www.veripool.org

Original Assignee: Wilson Snyder (@wsnyder)


When building verilator 3.914 on Debian, the smoke test fails. Here is the relevant exerpt of build log:

>>' dh_auto_test make -j1 test VERBOSE=1 make[1]: Entering directory '/<<PKGBUILDDIR>>' ------------------------------------------------------------ making verilator in src make[2]: Entering directory '/<<PKGBUILDDIR>>/src' cd obj_dbg && make -j 1 TGT=../../bin/verilator_bin_dbg VL_DEBUG=1 -f ../Makefile_obj serial make[3]: Entering directory '/<<PKGBUILDDIR>>/src/obj_dbg' make[3]: Nothing to be done for 'serial'. make[3]: Leaving directory '/<<PKGBUILDDIR>>/src/obj_dbg' cd obj_dbg && make TGT=../../bin/verilator_bin_dbg VL_DEBUG=1 -f ../Makefile_obj make[3]: Entering directory '/<<PKGBUILDDIR>>/src/obj_dbg' Compile flags: g++ -Wdate-time -D_FORTIFY_SOURCE=2 -I/usr/include -MMD -I. -I.. -I.. -I../../include -DYYDEBUG -ggdb -DVL_DEBUG -MP -faligned-new -fno-delete-null-pointer-checks -Wno-unused-parameter -Wno-shadow -DDEFENV_SYSTEMC="" -DDEFENV_SYSTEMC_ARCH="" -DDEFENV_SYSTEMC_INCLUDE="" -DDEFENV_SYSTEMC_LIBDIR="" -DDEFENV_VERILATOR_ROOT="/usr/share/verilator" make[3]: Leaving directory '/<<PKGBUILDDIR>>/src/obj_dbg' cd obj_dbg && make TGT=../../bin/verilator_coverage_bin_dbg VL_DEBUG=1 VL_VLCOV=1 -f ../Makefile_obj serial_vlcov make[3]: Entering directory '/<<PKGBUILDDIR>>/src/obj_dbg' make[3]: Nothing to be done for 'serial_vlcov'. make[3]: Leaving directory '/<<PKGBUILDDIR>>/src/obj_dbg' cd obj_dbg && make TGT=../../bin/verilator_coverage_bin_dbg VL_DEBUG=1 VL_VLCOV=1 -f ../Makefile_obj make[3]: Entering directory '/<<PKGBUILDDIR>>/src/obj_dbg' Compile flags: g++ -Wdate-time -D_FORTIFY_SOURCE=2 -I/usr/include -MMD -I. -I.. -I.. -I../../include -DYYDEBUG -ggdb -DVL_DEBUG -MP -faligned-new -fno-delete-null-pointer-checks -Wno-unused-parameter -Wno-shadow -DDEFENV_SYSTEMC="" -DDEFENV_SYSTEMC_ARCH="" -DDEFENV_SYSTEMC_INCLUDE="" -DDEFENV_SYSTEMC_LIBDIR="" -DDEFENV_VERILATOR_ROOT="/usr/share/verilator" make[3]: Leaving directory '/<<PKGBUILDDIR>>/src/obj_dbg' cd obj_opt && make -j 1 TGT=../../bin/verilator_bin -f ../Makefile_obj serial make[3]: Entering directory '/<<PKGBUILDDIR>>/src/obj_opt' make[3]: Nothing to be done for 'serial'. make[3]: Leaving directory '/<<PKGBUILDDIR>>/src/obj_opt' cd obj_opt && make TGT=../../bin/verilator_bin -f ../Makefile_obj make[3]: Entering directory '/<<PKGBUILDDIR>>/src/obj_opt' Compile flags: g++ -Wdate-time -D_FORTIFY_SOURCE=2 -I/usr/include -MMD -I. -I.. -I.. -I../../include -DYYDEBUG -O2 -MP -faligned-new -fno-delete-null-pointer-checks -Wno-unused-parameter -Wno-shadow -DDEFENV_SYSTEMC="" -DDEFENV_SYSTEMC_ARCH="" -DDEFENV_SYSTEMC_INCLUDE="" -DDEFENV_SYSTEMC_LIBDIR="" -DDEFENV_VERILATOR_ROOT="/usr/share/verilator" make[3]: Leaving directory '/<<PKGBUILDDIR>>/src/obj_opt' make[2]: Leaving directory '/<<PKGBUILDDIR>>/src' test_regress/t/t_a_first_cc.pl ====================================================================== Use of uninitialized value $ENV{"VERILATOR_ROOT"} in concatenation (.) or string at ./driver.pl line 337. vlt/t_a_first_cc: ================================================== perl ../bin/verilator --debug --debugi 0 --gdbbt --no-dump-tree -V sh: 1: gdb: not found -Info: --gdbbt ignored: gdb doesn't seem to be working /<<PKGBUILDDIR>>/bin/verilator_bin_dbg --debug --debugi 0 --gdbbt --no-dump-tree -V Starting Verilator 3.914 2017-10-14 rev verilator_3_912-54-g132f61e Starting Verilator 3.914 2017-10-14 rev verilator_3_912-54-g132f61e Verilator 3.914 2017-10-14 rev verilator_3_912-54-g132f61e Copyright 2003-2017 by Wilson Snyder. Verilator is free software; you can redistribute it and/or modify the Verilator internals under the terms of either the GNU Lesser General Public License Version 3 or the Perl Artistic License Version 2.0. See http://www.veripool.org/verilator for documentation Summary of configuration: Compiled in defaults if not in environment: SYSTEMC = SYSTEMC_ARCH = SYSTEMC_INCLUDE = SYSTEMC_LIBDIR = VERILATOR_ROOT = /usr/share/verilator Environment: PERL = SYSTEMC = SYSTEMC_ARCH = SYSTEMC_INCLUDE = SYSTEMC_LIBDIR = VERILATOR_ROOT = VERILATOR_BIN = vlt/t_a_first_cc: Compile perl ../bin/verilator --prefix Vt_a_first_cc --x-assign unique -cc -Mdir obj_dir/t_a_first_cc -OD --debug-check --debug --debugi 0 --gdbbt --no-dump-tree --trace --clk clk -f input.vc t/t_a_first_cc.v > obj_dir/t_a_first_cc/vlt_compile.log sh: 1: gdb: not found -Info: --gdbbt ignored: gdb doesn't seem to be working /<<PKGBUILDDIR>>/bin/verilator_bin_dbg --prefix Vt_a_first_cc --x-assign unique -cc -Mdir obj_dir/t_a_first_cc -OD --debug-check --debug --debugi 0 --gdbbt --no-dump-tree --trace --clk clk -f input.vc t/t_a_first_cc.v Starting Verilator 3.914 2017-10-14 rev verilator_3_912-54-g132f61e Starting Verilator 3.914 2017-10-14 rev verilator_3_912-54-g132f61e vlt/t_a_first_cc: GCC cd obj_dir/t_a_first_cc && make -f/<<PKGBUILDDIR>>/test_regress/Makefile_obj VM_PREFIX=Vt_a_first_cc CPPFLAGS_DRIVER=-DT_A_FIRST_CC Vt_a_first_cc > obj_dir/t_a_first_cc/vlt_gcc.log make[2]: Entering directory '/<<PKGBUILDDIR>>/test_regress/obj_dir/t_a_first_cc' Vt_a_first_cc.mk:51: /usr/share/verilator/include/verilated.mk: No such file or directory make[2]: *** No rule to make target '/usr/share/verilator/include/verilated.mk'. Stop. make[2]: Leaving directory '/<<PKGBUILDDIR>>/test_regress/obj_dir/t_a_first_cc' %Warning: vlt/t_a_first_cc: Exec of cd obj_dir/t_a_first_cc && failed vlt/t_a_first_cc: %Error: Exec of cd obj_dir/t_a_first_cc && failed Use of uninitialized value $ENV{"VERILATOR_ROOT"} in concatenation (.) or string at ./driver.pl line 337. vlt/t_a_first_cc: FAILED: ************************************************************ ==SUMMARY: Left NO-FORKER Passed 0 Unsup 0 Skipped 0 Failed 1 ====================================================================== TESTS Passed 0 Unsup 0 Skipped 0 Failed 1 Time 0:00 #vlt/t_a_first_cc: %Error: Exec of cd obj_dir/t_a_first_cc && failed make && test_regress/t/t_a_first_cc.pl TESTS Passed 0 Unsup 0 Skipped 0 Failed 1 Time 0:00 Makefile:208: recipe for target 'smoke-test' failed make[1]: *** [smoke-test] Error 10 make[1]: Leaving directory '/<<PKGBUILDDIR>>' dh_auto_test: make -j1 test VERBOSE=1 returned exit code 2 debian/rules:4: recipe for target 'build' failed make: *** [build] Error 2
veripoolbot commented 6 years ago

Original Redmine Comment Author Name: أحمد المحمودي Original Date: 2017-10-17T02:06:20Z


The attached patch is a workaround (probably a dirty one) to get smoke test to build

veripoolbot commented 6 years ago

Original Redmine Comment Author Name: Wilson Snyder (@wsnyder) Original Date: 2017-11-06T02:52:02Z


Different fix that should have similar effect to git a week or so ago towards 3.913.

veripoolbot commented 6 years ago

Original Redmine Comment Author Name: Wilson Snyder (@wsnyder) Original Date: 2017-11-25T20:47:53Z


In 3.916.