Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

verilator 4.018 build fails at 'make test' in examples/hello_world_c #1494

Closed
veripoolbot opened this issue Sep 1, 2019 · 3 comments
Closed
Assignees
Labels
area: tests Issue involves the testing system resolution: fixed Closed; fixed

Comments

@veripoolbot
Copy link
Contributor


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

Original Assignee: Todd Strader (@toddstrader)


When building verilator 4.018, the build failed when running make test in
examples/hello_world_c, with the following error:

======================================================================
Use of uninitialized value $ENV{"VERILATOR_ROOT"} in concatenation (.) or string at ./driver.pl line 506.
dist/t_a_first_cc: ==================================================
-Skip: dist/t_a_first_cc: scenario 'dist' not enabled for test
dist/t_a_first_cc: %Skip: Skip: scenario 'dist' not enabled for test
Use of uninitialized value $ENV{"VERILATOR_ROOT"} in concatenation (.) or string at ./driver.pl line 506.
==SUMMARY: Passed 0  Failed 0  Failed-First 0  Skipped 0  Unsup 0  Time 0:00
======================================================================
Use of uninitialized value $ENV{"VERILATOR_ROOT"} in concatenation (.) or string at ./driver.pl line 506.
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
Starting Verilator 4.018 2019-08-29 rev UNKNOWN_REV
Starting Verilator 4.018 2019-08-29 rev UNKNOWN_REV
Verilator 4.018 2019-08-29 rev UNKNOWN_REV

Copyright 2003-2019 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    = /usr/include
     SYSTEMC_LIBDIR     = /usr/lib/x86_64-linux-gnu
     VERILATOR_ROOT     = /usr/share/verilator

Environment:
     PERL               =
     SYSTEMC            =
     SYSTEMC_ARCH       =
     SYSTEMC_INCLUDE    = /usr/include
     SYSTEMC_LIBDIR     = /usr/lib/x86_64-linux-gnu
     VERILATOR_ROOT     =
     VERILATOR_BIN      =
Use of uninitialized value $ENV{"VERILATOR_ROOT"} in concatenation (.) or string at ./driver.pl line 794.
Use of uninitialized value $ENV{"VERILATOR_ROOT"} in concatenation (.) or string at ./driver.pl line 794.
         perl /bin/verilator --prefix Vt_a_first_cc --x-assign unique -cc -Mdir obj_vlt/t_a_first_cc -OD --debug-check --comp-limit-members 10 --debug --debugi 0 --gdbbt --no-dump-tree --trace --clk clk  -f input.vc +define+TEST_OBJ_DIR=obj_vlt/t_a_first_cc t/t_a_first_cc.v    > obj_vlt/t_a_first_cc/vlt_compile.log
Can't open perl script "/bin/verilator": No such file or directory
%Warning: vlt/t_a_first_cc: Exec of perl failed: Can't open perl script "/bin/verilator": No such file or directory

vlt/t_a_first_cc: %Error: Exec of perl failed: Can't open perl script "/bin/verilator": No such file or directory
Use of uninitialized value $ENV{"VERILATOR_ROOT"} in concatenation (.) or string at ./driver.pl line 506.
vlt/t_a_first_cc: FAILED: Exec of perl failed: Can't open perl script "/bin/verilator": No such file or directory
==SUMMARY: Passed 0  Failed 1  Failed-First 0  Skipped 0  Unsup 0  Time 0:00
==SUMMARY: Passed 0  Failed 1  Failed-First 0  Skipped 0  Unsup 0  Time 0:00

======================================================================
         #vlt/t_a_first_cc: %Error: Exec of perl failed: Can't open perl script "/bin/verilator": No such file or directory
                 make && test_regress/t/t_a_first_cc.pl  --vlt
TESTS DONE, FAILED: Passed 0  Failed 1  Failed-First 0  Skipped 0  Unsup 0  Time 0:00
make[1]: *** [Makefile:228: smoke-test] Error 10
make[1]: *** Waiting for unfinished jobs....

Complete build log is on:
https://launchpadlibrarian.net/439782481/buildlog_ubuntu-eoan-amd64.verilator_4.018-1~2.gbpe14455_BUILDING.txt.gz

@veripoolbot
Copy link
Contributor Author


Original Redmine Comment
Author Name: Todd Strader (@toddstrader)
Original Date: 2019-09-01T12:05:53Z


Setting VERILATOR_ROOT to the root of your checkout will fix the problem.

Wilson, something about this changed at 84a2cd0 (Remove some old DIRPROJECT dead code.). I used to run tests out of the tree without having to set VERILATOR_ROOT as well. It appears that's what this code that was purged used to do. It seemed a logical default to assume VERILATOR_ROOT is the current repo you're in if the environment variable is not set. Is it reasonable to reinstate this behavior?

@veripoolbot
Copy link
Contributor Author


Original Redmine Comment
Author Name: Wilson Snyder (@wsnyder)
Original Date: 2019-09-01T15:16:08Z


Ahmed, thanks for the report.

Todd, thanks for pointing out the commit. Yes, part of that removal should have been kept.

Fixed in git towards 4.020.

@veripoolbot
Copy link
Contributor Author


Original Redmine Comment
Author Name: Wilson Snyder (@wsnyder)
Original Date: 2019-10-06T14:06:52Z


In 4.020. Thanks for reporting this; if there are additional related problems, please open a new issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area: tests Issue involves the testing system resolution: fixed Closed; fixed
Projects
None yet
Development

No branches or pull requests

2 participants