symbolator: Got this error while running symbolator on a verilog file
Is symbolator properly supported for verilog? I got the following error when I ran it on a .v file. I have tried out multiple output formats etc. but no joy.
./symbolator.py alu.v
Scanning library: .
Creating symbol for alu.v "alu"
-> __alu.svg
Traceback (most recent call last):
File "./symbolator.py", line 596, in <module>
main()
File "./symbolator.py", line 591, in main
sym.draw(0,0, nc)
File "./symbolator.py", line 272, in draw
sym_width = max(s.min_width(c, style.font) for sym in self.symbols for s in sym.sections)
File "./symbolator.py", line 272, in <genexpr>
sym_width = max(s.min_width(c, style.font) for sym in self.symbols for s in sym.sections)
File "./symbolator.py", line 158, in min_width
lmax = max(tw.text_width(c, font_params) for tw in self.left_pins)
File "./symbolator.py", line 158, in <genexpr>
lmax = max(tw.text_width(c, font_params) for tw in self.left_pins)
File "./symbolator.py", line 105, in text_width
x0, y0, x1, y1, baseline = c.surf.text_bbox(self.text, font_params)
File "/mnt/g/symbolator_files/symbolator/nucanvas/svg_backend.py", line 211, in text_bbox
return CairoSurface.cairo_text_bbox(text, font_params, spacing, self.scale)
File "/mnt/g/symbolator_files/symbolator/nucanvas/cairo_backend.py", line 122, in cairo_text_bbox
layout = pangocairo.create_layout(ctx)
KeyError: 'could not find foreign type Context'
sumanth@LAPTOP-MFGQBV4B:/mnt/g/symbolator_files/symbolator$ ```
About this issue
- Original URL
- State: open
- Created 4 years ago
- Comments: 20
@mithro what exactly are you planning with Symbolator in the Symbiflow project? I think Its high time someone created an open-source HDL to block diagram converter that enables easier design exploration by allowing us to zoom into the sub-modules without having to synthesize the design. Something like the Schematic Viewer in Vivado and ISE except much lighter and faster.
If something like that is on the charts. I would love to contribute to the project.
FYI - We have started maintaining a symbolator fork in the SymbiFlow organization (https://github.com/SymbiFlow/symbolator).
We are reviewing and accepting pull requests as the tool is being heavily used in SymbiFlow and Google’s skywater-pdk documentation.
At some point we might rename it to something like symbiflow-symbolator and publish it on PyPi and similar.