Hi Vasil,
I did indeed not have `square2_ff_pydoc.h` in `build/python/bindings`. Running `make clean` and `make` did resolve that, though. Thank you for telling me about `make clean`.
But then, when I attempt to continue the tutorial by running the tests, I get the following:
~/gr-howto/build$ ctest -V
UpdateCTestConfiguration from :/home/antonott/gr-howto/build/DartConfiguration.tcl
UpdateCTestConfiguration from :/home/antonott/gr-howto/build/DartConfiguration.tcl
Test project /home/antonott/gr-howto/build
Constructing a list of tests
Done constructing a list of tests
Updating test list for fixtures
Added 0 tests to meet fixture requirements
Checking test dependency graph...
Checking test dependency graph end
test 1
Start 1: qa_square_ff
1: Test command: /usr/bin/sh "/home/antonott/gr-howto/build/python/qa_square_ff_test.sh"
1: Test timeout computed to be: 10000000
1: .E.
1: ======================================================================
1: ERROR: test_002_square2_ff (__main__.qa_square_ff)
1: ----------------------------------------------------------------------
1: Traceback (most recent call last):
1: File "/home/antonott/gr-howto/python/qa_square_ff.py", line 50, in test_002_square2_ff
1: sqr = howto.square2_ff()
1: NameError: name 'howto' is not defined
1:
1: ----------------------------------------------------------------------
1: Ran 3 tests in 0.003s
1:
1: FAILED (errors=1)
1: DEPRECATED: Using filename with gr_unittest does no longer have any effect.
1/1 Test #1: qa_square_ff .....................***Failed 0.22 sec
0% tests passed, 1 tests failed out of 1
Total Test time (real) = 0.22 sec
The following tests FAILED:
1 - qa_square_ff (Failed)
Errors while running CTest
This is a failure in the test for the new block (see the OOT tutorial). It is quite similar to the original error that we have talked about, but this time the workaround of installing the module does not help. It is surprising that this test can fail despite the first one, also dependent on `howto` and in the same python class, succeeding. Though I guess since the unit tests are executed with reflection anything is possible.UpdateCTestConfiguration from :/home/antonott/gr-howto/build/DartConfiguration.tcl
UpdateCTestConfiguration from :/home/antonott/gr-howto/build/DartConfiguration.tcl
Test project /home/antonott/gr-howto/build
Constructing a list of tests
Done constructing a list of tests
Updating test list for fixtures
Added 0 tests to meet fixture requirements
Checking test dependency graph...
Checking test dependency graph end
test 1
Start 1: qa_square_ff
1: Test command: /usr/bin/sh "/home/antonott/gr-howto/build/python/qa_square_ff_test.sh"
1: Test timeout computed to be: 10000000
1: .E.
1: ======================================================================
1: ERROR: test_002_square2_ff (__main__.qa_square_ff)
1: ----------------------------------------------------------------------
1: Traceback (most recent call last):
1: File "/home/antonott/gr-howto/python/qa_square_ff.py", line 50, in test_002_square2_ff
1: sqr = howto.square2_ff()
1: NameError: name 'howto' is not defined
1:
1: ----------------------------------------------------------------------
1: Ran 3 tests in 0.003s
1:
1: FAILED (errors=1)
1: DEPRECATED: Using filename with gr_unittest does no longer have any effect.
1/1 Test #1: qa_square_ff .....................***Failed 0.22 sec
0% tests passed, 1 tests failed out of 1
Total Test time (real) = 0.22 sec
The following tests FAILED:
1 - qa_square_ff (Failed)
Errors while running CTest
Best regards,
Anton
From: Vasil Velichkov <vvvelichkov@gmail.com>
Sent: Tuesday, June 29, 2021 6:33:42 PM
To: Anton Ottosson; discuss-gnuradio@gnu.org
Subject: Re: OOT tests failing in GNU Radio 3.9.2.0, Ubuntu 20.04.2 LTS
Sent: Tuesday, June 29, 2021 6:33:42 PM
To: Anton Ottosson; discuss-gnuradio@gnu.org
Subject: Re: OOT tests failing in GNU Radio 3.9.2.0, Ubuntu 20.04.2 LTS
Hi Anton,
On 29/06/2021 19.07, Anton Ottosson wrote:
> Thank you for so generously taking time out of your day to look at this. I agree with your analysis and have now submitted an issue (https://github.com/gnuradio/gnuradio/issues/4825) about this to the GNU Radio GitHub repository.
Nice. Thanks for opening an issue.
> However, it seems like I might have found an additional issue, possibly related. I wanted to make progress with the OOT tutorial (https://wiki.gnuradio.org/index.php/OutOfTreeModules), so i used Ron's suggested workaround with installing the module to get the tests to work. The new issue appears a bit later in the tutorial, when we attempt to add another block to the module. Instead of me describing it here, I have once again set up a GitHub repository (https://github.com/antonott/oot_tutorial_issue) to illustrate the problem. The README describes the process, and of course the rest of the repo contains the state of the module.
First check that you have `square2_ff_pydoc.h` file in `build/python/bindings` directory and if not run `make clean` and `make`. But if there is a `square2_ff_pydoc.h` then run `make VERBOSE=1` and check that an include flag (`-I`) that contains the full path to `build/python/bindings` is present.
I'm able to successfully build your oot_tutorial_issue on Fedora 35 with gnuradio 3.9.2.0 and pybind 2.6.2-3. Here is the relevant part of `make VERBOSE=1`
[ 70%] Building CXX object python/bindings/CMakeFiles/howto_python.dir/square2_ff_python.cc.o
cd /home/test/oot_tutorial_issue/build/python/bindings && /usr/bin/c++ -DGR_MPLIB_GMP -DGR_PERFORMANCE_COUNTERS -Dhowto_python_EXPORTS -I/home/test/oot_tutorial_issue/build/python/bindings -I/home/test/oot_tutorial_issue/python/bindings/../../lib -I/home/test/oot_tutorial_issue/python/bindings/../../include -I/home/test/oot_tutorial_issue/lib/../include -isystem /usr/lib64/python3.10/site-packages/numpy/core/include -isystem /usr/include/python3.10 -O3 -DNDEBUG -fPIC -fvisibility=hidden -fvisibility=hidden -Wno-unused-variable -flto -fno-fat-lto-objects -std=gnu++14 -MD -MT python/bindings/CMakeFiles/howto_python.dir/square2_ff_python.cc.o -MF CMakeFiles/howto_python.dir/square2_ff_python.cc.o.d -o CMakeFiles/howto_python.dir/square2_ff_python.cc.o -c /home/test/oot_tutorial_issue/python/bindings/square2_ff_python.cc
Regards,
Vasil
On 29/06/2021 19.07, Anton Ottosson wrote:
> Thank you for so generously taking time out of your day to look at this. I agree with your analysis and have now submitted an issue (https://github.com/gnuradio/gnuradio/issues/4825) about this to the GNU Radio GitHub repository.
Nice. Thanks for opening an issue.
> However, it seems like I might have found an additional issue, possibly related. I wanted to make progress with the OOT tutorial (https://wiki.gnuradio.org/index.php/OutOfTreeModules), so i used Ron's suggested workaround with installing the module to get the tests to work. The new issue appears a bit later in the tutorial, when we attempt to add another block to the module. Instead of me describing it here, I have once again set up a GitHub repository (https://github.com/antonott/oot_tutorial_issue) to illustrate the problem. The README describes the process, and of course the rest of the repo contains the state of the module.
First check that you have `square2_ff_pydoc.h` file in `build/python/bindings` directory and if not run `make clean` and `make`. But if there is a `square2_ff_pydoc.h` then run `make VERBOSE=1` and check that an include flag (`-I`) that contains the full path to `build/python/bindings` is present.
I'm able to successfully build your oot_tutorial_issue on Fedora 35 with gnuradio 3.9.2.0 and pybind 2.6.2-3. Here is the relevant part of `make VERBOSE=1`
[ 70%] Building CXX object python/bindings/CMakeFiles/howto_python.dir/square2_ff_python.cc.o
cd /home/test/oot_tutorial_issue/build/python/bindings && /usr/bin/c++ -DGR_MPLIB_GMP -DGR_PERFORMANCE_COUNTERS -Dhowto_python_EXPORTS -I/home/test/oot_tutorial_issue/build/python/bindings -I/home/test/oot_tutorial_issue/python/bindings/../../lib -I/home/test/oot_tutorial_issue/python/bindings/../../include -I/home/test/oot_tutorial_issue/lib/../include -isystem /usr/lib64/python3.10/site-packages/numpy/core/include -isystem /usr/include/python3.10 -O3 -DNDEBUG -fPIC -fvisibility=hidden -fvisibility=hidden -Wno-unused-variable -flto -fno-fat-lto-objects -std=gnu++14 -MD -MT python/bindings/CMakeFiles/howto_python.dir/square2_ff_python.cc.o -MF CMakeFiles/howto_python.dir/square2_ff_python.cc.o.d -o CMakeFiles/howto_python.dir/square2_ff_python.cc.o -c /home/test/oot_tutorial_issue/python/bindings/square2_ff_python.cc
Regards,
Vasil
No comments:
Post a Comment