GitHub
04/27/2023, 3:10 PMself.design_path = design_path
self.design_name = design_name
self.tag = tag
self.current_directory = os.path.dirname(__file__)
if run_path is None:
run_path = get_run_path(design=design_path, tag=tag)
self.run_path = run_path
self.configuration = params.values()
self.configuration_full = ConfigHandler.get_config_for_run(
None, design_path, tag, full=True
)
https://github.com/The-OpenROAD-Project/OpenLane/blob/master/scripts/report/report.py#L119
This section here is where the file open fails:
/// The parameter full=False was added during the tag that the report generation stopped working
def get_config_for_run(Self, run_path, design, tag, full=False) -> Dict[str, str]:
if run_path is None:
run_path = get_run_path(design=design, tag=tag)
config_path = os.path.join(os.getcwd(), run_path, "config.tcl")
config = read_tcl_env(config_path)
https://github.com/The-OpenROAD-Project/OpenLane/blob/master/scripts/config/config.py#L93
Expected Behavior
For the error in log not to occur and metrics.csv to be generated.
Environment report
Docker image:
OPENLANE_TAG: 2023.03.28
OPENLANE_IMAGE_NAME: efabless/openlane:2023.03.28
Reproduction material
Simply make your -design and -run_path 2 different directories and provide them as options to specify to the flow.tcl.
Relevant log output
[STEP 34]
[INFO]: Running OpenROAD Antenna Rule Checker (log: ../work/runs/wokwi/logs/signoff/34-antenna.log)...
[STEP 35]
[INFO]: Running Circuit Validity Checker ERC (log: ../work/runs/wokwi/logs/signoff/35-erc_screen.log)...
[INFO]: Saving current set of views in '../work/runs/wokwi/results/final'...
[INFO]: Saving runtime environment...
[INFO]: Generating final set of reports...
Error: : Failed to create manufacturability and metric reports:
Error: : Traceback (most recent call last):
File "/openlane/scripts/generate_reports.py", line 184, in <module>
cli()
File "/usr/local/lib/python3.6/site-packages/click/core.py", line 1128, in __call__
return self.main(*args, **kwargs)
File "/usr/local/lib/python3.6/site-packages/click/core.py", line 1053, in main
rv = self.invoke(ctx)
File "/usr/local/lib/python3.6/site-packages/click/core.py", line 1395, in invoke
return ctx.invoke(self.callback, **ctx.params)
File "/usr/local/lib/python3.6/site-packages/click/core.py", line 754, in invoke
return __callback(*args, **kwargs)
File "/openlane/scripts/generate_reports.py", line 51, in cli
report = Report(design, tag, design_name, params, run_path).get_report()
File "/openlane/scripts/report/report.py", line 141, in __init__
None, design_path, tag, full=True
File "/openlane/scripts/config/config.py", line 94, in get_config_for_run
config = read_tcl_env(config_path)
File "/openlane/scripts/config/tcl.py", line 339, in read_tcl_env
string_data = open(config_path).read()
FileNotFoundError: [Errno 2] No such file or directory: '/work/src/runs/wokwi/config.tcl'
[SUCCESS]: Flow complete.
[INFO]: Note that the following warnings have been generated:
The-OpenROAD-Project/OpenLaneGitHub
04/30/2023, 10:10 AM