Project

General

Profile

[logo] 
 
Home
News
Activity
About/Contact
Major Tools
  Dinotrace
  Verilator
  Verilog-mode
  Verilog-Perl
Other Tools
  IPC::Locker
  Parallel::Forker
  Voneline
General Info
  Papers

Issue #1494

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

Added by أحمد المحمودي 3 months ago. Updated about 1 month ago.

Status:
Closed
Priority:
Normal
Assignee:
Category:
Tests
% Done:

0%


Description

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

History

#1 Updated by Todd Strader 3 months ago

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

Wilson, something about this changed at 84a2cd0ec701ce7fd930f5f035758f7edab16a63 (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?

#2 Updated by Wilson Snyder 3 months ago

  • Category set to Tests
  • Status changed from New to Resolved
  • Assignee set to Todd Strader

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.

#3 Updated by Wilson Snyder about 1 month ago

  • Status changed from Resolved to Closed

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

Also available in: Atom