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

Maint 3.10 #12

Draft
wants to merge 13 commits into
base: main
Choose a base branch
from
Draft

Maint 3.10 #12

wants to merge 13 commits into from

Conversation

noonien-d
Copy link

Once again started over with a clean 3.10 template and fixed functionality afterwards.

I did not manage to get the binding generator running automatically without issues. Might be an issue due to my system (Ubuntu 22.04).

Besides that, the example apps work fine for me.

@noonien-d noonien-d marked this pull request as draft March 21, 2023 14:10
@noonien-d noonien-d changed the title WIP: Maint 3.10 Maint 3.10 Mar 21, 2023
@dkozel
Copy link

dkozel commented Mar 22, 2023

Hi @noonien-d, Thanks for working on updating the module!

What issues are you seeing with the bindings generator? It'd be great to have this all working with the latest GNU Radio release.

@noonien-d
Copy link
Author

What issues are you seeing with the bindings generator?

I get the following error when not suppressing it by setting catch_exceptions=True in bind_oot_file.py

INFO Parsing source file "/home/user/gr-3.10/gr-verilog/include/gnuradio/verilog/verilog_axi_ii.h" ... 
In file included from <built-in>:428:
<command line>:3:9: error: macro name must be an identifier
#define -U__PIE__ 1
        ^
1 error generated.
Traceback (most recent call last):
  File "/home/user/gr-3.10/gr-verilog/python/verilog/bindings/bind_oot_file.py", line 58, in <module>
    bg.gen_file_binding(args.filename)
  File "/usr/lib/python3/dist-packages/gnuradio/bindtool/core/generator.py", line 197, in gen_file_binding
    raise(e)
  File "/usr/lib/python3/dist-packages/gnuradio/bindtool/core/generator.py", line 184, in gen_file_binding
    header_info = parser.get_header_info(self.namespace)
  File "/usr/lib/python3/dist-packages/gnuradio/blocktool/core/parseheader_generic.py", line 330, in get_header_info
    decls = parser.parse(
  File "/usr/lib/python3/dist-packages/pygccxml/parser/__init__.py", line 51, in parse
    declarations = parser.read_files(files, compilation_mode)
  File "/usr/lib/python3/dist-packages/pygccxml/parser/project_reader.py", line 264, in read_files
    return self.__parse_file_by_file(files)
  File "/usr/lib/python3/dist-packages/pygccxml/parser/project_reader.py", line 292, in __parse_file_by_file
    decls = reader.read_file(header)
  File "/usr/lib/python3/dist-packages/pygccxml/parser/source_reader.py", line 303, in read_file
    return self.read_cpp_source_file(source_file)
  File "/usr/lib/python3/dist-packages/pygccxml/parser/source_reader.py", line 322, in read_cpp_source_file
    xml_file = self.create_xml_file(ffname)
  File "/usr/lib/python3/dist-packages/pygccxml/parser/source_reader.py", line 263, in create_xml_file
    raise RuntimeError(
RuntimeError: Error occurred while running CASTXML xml file does not exist
make[2]: *** [python/verilog/bindings/CMakeFiles/verilog_axi_ii_python.cc_regen_bindings.dir/build.make:73: ../python/verilog/bindings}/verilog_axi_ii_python.cc] Error 1
make[1]: *** [CMakeFiles/Makefile2:407: python/verilog/bindings/CMakeFiles/verilog_axi_ii_python.cc_regen_bindings.dir/all] Error 2
make: *** [Makefile:146: all] Error 2

@freddagg
Copy link

freddagg commented Apr 26, 2023

On Ubuntu 20.04.6 LTS / Python 3.8.10

Based on the changes from noonien-d/maint-3.10 branch, with catch_exceptions=True in bind_oot_file.py

I also see the #define -U__PIE__ 1 issue. This might be related to Position Independent Executable (PIE) setting in CMAKE I have been unable to get to the bottom of.

gr-verilog-build-issue.txt

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants