Forum: GNU Radio gr-howto-write-a-block build fails

Posted by Tommy Tracy II (Guest)
on 2012-12-18 07:28
(Received via mailing list)
Dear List,

  I'm looking to write c++ gnuradio blocks using the 
gr-howto-write-a-block code that comes with gnuradio.  Unfortunately, 
when I do the build with the existing code, the tests fail. Has anyone 
else seen this?
I'm running Ubuntu 12.10.

----------
ttracy@ubuntu:~/Documents/src/gnuradio/gr-howto-write-a-block/build$ 
sudo cmake ../
-- The CXX compiler identification is GNU 4.7.2
-- The C compiler identification is GNU 4.7.2
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working C compiler: /usr/bin/gcc
-- Check for working C compiler: /usr/bin/gcc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Build type not specified: defaulting to release.
-- Boost version: 1.49.0
-- Found PkgConfig: /usr/bin/pkg-config (found version "0.26")
-- checking for module 'gruel'
--   found gruel, version 3.6.3git
-- Found GRUEL: /usr/local/lib/libgruel.so
-- checking for module 'gnuradio-core'
--   found gnuradio-core, version 3.6.3git
-- Found GNURADIO_CORE: /usr/local/lib/libgnuradio-core.so
-- Boost version: 1.49.0
-- Found the following Boost libraries:
--   unit_test_framework
-- Found SWIG: /usr/bin/swig2.0 (found version "2.0.7")
-- Found PythonLibs: /usr/lib/python3.2/config/libpython3.2.so (found 
version "2.7.3")
-- Found PythonInterp: /usr/bin/python (found version "2.7.3")
-- Found Doxygen: /usr/bin/doxygen (found version "1.8.1.2")
-- Configuring done
-- Generating done
-- Build files have been written to: 
/home/ttracy/Documents/src/gnuradio/gr-howto-write-a-block/build
ttracy@ubuntu:~/Documents/src/gnuradio/gr-howto-write-a-block/build$ 
sudo make
Scanning dependencies of target gnuradio-howto
[  5%] Building CXX object 
lib/CMakeFiles/gnuradio-howto.dir/howto_square_ff.cc.o
[ 10%] Building CXX object 
lib/CMakeFiles/gnuradio-howto.dir/howto_square2_ff.cc.o
Linking CXX shared library libgnuradio-howto.so
[ 10%] Built target gnuradio-howto
Scanning dependencies of target qa_howto_square2_ff
[ 15%] Building CXX object 
lib/CMakeFiles/qa_howto_square2_ff.dir/qa_howto_square2_ff.cc.o
Linking CXX executable qa_howto_square2_ff
[ 15%] Built target qa_howto_square2_ff
Scanning dependencies of target qa_howto_square_ff
[ 20%] Building CXX object 
lib/CMakeFiles/qa_howto_square_ff.dir/qa_howto_square_ff.cc.o
Linking CXX executable qa_howto_square_ff
[ 20%] Built target qa_howto_square_ff
Scanning dependencies of target _howto_swig_swig_tag
[ 25%] Building CXX object 
swig/CMakeFiles/_howto_swig_swig_tag.dir/_howto_swig_swig_tag.cpp.o
Linking CXX executable _howto_swig_swig_tag
[ 25%] Built target _howto_swig_swig_tag
Scanning dependencies of target _howto_swig_doc_tag
[ 30%] Building CXX object 
swig/CMakeFiles/_howto_swig_doc_tag.dir/_howto_swig_doc_tag.cpp.o
Linking CXX executable _howto_swig_doc_tag
[ 30%] Built target _howto_swig_doc_tag
[ 35%] Generating doxygen xml for howto_swig_doc docs
[ 40%] Generating howto_swig_doc.i
[ 45%] Generating howto_swig.tag
[ 50%] Swig source
Scanning dependencies of target _howto_swig
[ 55%] Building CXX object 
swig/CMakeFiles/_howto_swig.dir/howto_swigPYTHON_wrap.cxx.o
Linking CXX shared module _howto_swig.so
[ 55%] Built target _howto_swig
Scanning dependencies of target pygen_swig_cc723
[ 60%] Generating howto_swig.pyc
[ 65%] Generating howto_swig.pyo
[ 85%] Built target pygen_swig_cc723
Scanning dependencies of target pygen_python_257bc
[ 90%] Generating __init__.pyc
[ 95%] Generating __init__.pyo
[ 95%] Built target pygen_python_257bc
Scanning dependencies of target pygen_apps_58acf
[100%] Shebangin howto_square.py
[100%] Built target pygen_apps_58acf
ttracy@ubuntu:~/Documents/src/gnuradio/gr-howto-write-a-block/build$ 
sudo make test
Running tests...
Test project 
/home/ttracy/Documents/src/gnuradio/gr-howto-write-a-block/build
    Start 1: qa_howto_square_ff
1/3 Test #1: qa_howto_square_ff ...............   Passed    0.01 sec
    Start 2: qa_howto_square2_ff
2/3 Test #2: qa_howto_square2_ff ..............   Passed    0.01 sec
    Start 3: qa_howto
3/3 Test #3: qa_howto .........................***Failed    0.14 sec

67% tests passed, 1 tests failed out of 3

Total Test time (real) =   0.15 sec

The following tests FAILED:
    3 - qa_howto (Failed)
Errors while running CTest
make: *** [test] Error 8
----------


                   Sincerely,
          Tommy James Tracy II
            PhD Student
High Performance Low Power Lab
           University of Virginia
Posted by Martin Braun (CEL) (Guest)
on 2012-12-18 09:53
(Received via mailing list)
On Tue, Dec 18, 2012 at 01:27:16AM -0500, Tommy Tracy II wrote:
> I'm looking to write c++ gnuradio blocks using the gr-howto-write-a-block code
> that comes with gnuradio.  Unfortunately, when I do the build with the existing
> code, the tests fail. Has anyone else seen this?

I haven't (and it shouldn't fail). Comments:

1) Don't use 'sudo' for cmake and make test, unless really necessary.
2) You can build gr-howto-... for educational purposes, but I strongly
recommend using gr-modtool instead.
3) In general, if a test fails, use 'ctest -V -R <+REGEX+>' to obtain
the output of the failed test.
Provide that in any email here.

MB


>
> -- Check for working C compiler: /usr/bin/gcc
>
> --   found gnuradio-core, version 3.6.3git
>
>
> [ 10%] Building CXX object lib/CMakeFiles/gnuradio-howto.dir/
>
>
>
>
>
> [ 85%] Built target pygen_swig_cc723
>
>
> 3/3 Test #3: qa_howto .........................***Failed    0.14 sec
>  3 - qa_howto (Failed)
>
>           Tommy James Tracy II
>
>           PhD Student
>
> High Performance Low Power Lab
>
>            University of Virginia
>
>

> _______________________________________________
> Discuss-gnuradio mailing list
> Discuss-gnuradio@gnu.org
> https://lists.gnu.org/mailman/listinfo/discuss-gnuradio


--
Karlsruhe Institute of Technology (KIT)
Communications Engineering Lab (CEL)

Dipl.-Ing. Martin Braun
Research Associate

Kaiserstraße 12
Building 05.01
76131 Karlsruhe

Phone: +49 721 608-43790
Fax: +49 721 608-46071
www.cel.kit.edu

KIT -- University of the State of Baden-Württemberg and
National Laboratory of the Helmholtz Association
Posted by Tommy Tracy II (Guest)
on 2012-12-18 22:55
(Received via mailing list)
On Dec 18, 2012, at 3:52 AM, Martin Braun (CEL) <martin.braun@kit.edu> 
wrote:

> 3) In general, if a test fails, use 'ctest -V -R <+REGEX+>' to obtain
> the output of the failed test.
> Provide that in any email here.
>
> MB


1. Thank you for your advice. I went through and changed ownership to my 
user name, and I will only use sudo for installation.
2. I still want to figure out why gr-howto- is failing, but I have 
installed gr-modtool and will be using it.
  Does anyone know of a good tutorial for this package? I wrote my work 
function, but I'm not sure how to write a test.
3. I tried using ctest and got the following error:
----------
ttracy@ubuntu:~/Documents/src/gnuradio/gr-howto-write-a-block/build$ 
ctest -V -R qa_howto
UpdateCTestConfiguration  from 
:/home/ttracy/Documents/src/gnuradio/gr-howto-write-a-block/build/DartConfiguration.tcl
UpdateCTestConfiguration  from 
:/home/ttracy/Documents/src/gnuradio/gr-howto-write-a-block/build/DartConfiguration.tcl
Test project 
/home/ttracy/Documents/src/gnuradio/gr-howto-write-a-block/build
Constructing a list of tests
Done constructing a list of tests
Checking test dependency graph...
Checking test dependency graph end
test 1
    Start 1: qa_howto_square_ff

1: Test command: /bin/sh 
"/home/ttracy/Documents/src/gnuradio/gr-howto-write-a-block/build/lib/qa_howto_square_ff_test.sh"
1: Test timeout computed to be: 9.99988e+06
1: Running 2 test cases...
1:
1: *** No errors detected
1/3 Test #1: qa_howto_square_ff ...............   Passed    0.00 sec
test 2
    Start 2: qa_howto_square2_ff

2: Test command: /bin/sh 
"/home/ttracy/Documents/src/gnuradio/gr-howto-write-a-block/build/lib/qa_howto_square2_ff_test.sh"
2: Test timeout computed to be: 9.99988e+06
2: Running 2 test cases...
2:
2: *** No errors detected
2/3 Test #2: qa_howto_square2_ff ..............   Passed    0.00 sec
test 3
    Start 3: qa_howto

3: Test command: /bin/sh 
"/home/ttracy/Documents/src/gnuradio/gr-howto-write-a-block/build/python/qa_howto_test.sh"
3: Test timeout computed to be: 9.99988e+06
3: Traceback (most recent call last):
3:   File 
"/home/ttracy/Documents/src/gnuradio/gr-howto-write-a-block/python/qa_howto.py", 
line 23, in <module>
3:     from gnuradio import gr, gr_unittest
3:   File 
"/usr/local/lib/python2.7/dist-packages/gnuradio/gr/__init__.py", line 
27, in <module>
3:     from gnuradio_core import *
3:   File 
"/usr/local/lib/python2.7/dist-packages/gnuradio/gr/gnuradio_core.py", 
line 23, in <module>
3:     from gnuradio_core_runtime import *
3:   File 
"/usr/local/lib/python2.7/dist-packages/gnuradio/gr/gnuradio_core_runtime.py", 
line 26, in <module>
3:     _gnuradio_core_runtime = swig_import_helper()
3:   File 
"/usr/local/lib/python2.7/dist-packages/gnuradio/gr/gnuradio_core_runtime.py", 
line 22, in swig_import_helper
3:     _mod = imp.load_module('_gnuradio_core_runtime', fp, pathname, 
description)
3: ImportError: libgnuradio-core-3.6.3git.so.0.0.0: cannot open shared 
object file: No such file or directory
3/3 Test #3: qa_howto .........................***Failed    0.05 sec

The following tests passed:
  qa_howto_square_ff
  qa_howto_square2_ff

67% tests passed, 1 tests failed out of 3

Total Test time (real) =   0.06 sec

The following tests FAILED:
    3 - qa_howto (Failed)
Errors while running CTest
----------

It appears that qa_howto failed because of a missing module.
Posted by Tom Rondeau (Guest)
on 2012-12-18 22:58
(Received via mailing list)
On Tue, Dec 18, 2012 at 4:54 PM, Tommy Tracy II <tjt7a@virginia.edu> 
wrote:

> > I haven't (and it shouldn't fail). Comments:
>
> UpdateCTestConfiguration  from
>     Start 1: qa_howto_square_ff
>
> 3: Test command: /bin/sh
> 3:     from gnuradio_core import *
> line 22, in swig_import_helper
> 67% tests passed, 1 tests failed out of 3
>
> Total Test time (real) =   0.06 sec
>
> The following tests FAILED:
>           3 - qa_howto (Failed)
> Errors while running CTest
> ----------
>
> It appears that qa_howto failed because of a missing module.


It looks like you're just missing where libgnuradio-core is installed. 
Make
sure you installed GNU Radio, and then set LD_LIBRARY_PATH to point to 
the
location of the installed libraries (/usr/local/lib by default unless
you've changed the install prefix).

Tom
Posted by Tommy Tracy II (Guest)
on 2012-12-18 23:07
(Received via mailing list)
On Dec 18, 2012, at 4:57 PM, Tom Rondeau <tom@trondeau.com> wrote:

> > 1) Don't use 'sudo' for cmake and make test, unless really necessary.
> 2. I still want to figure out why gr-howto- is failing, but I have installed 
gr-modtool and will be using it.
> Checking test dependency graph end
>     Start 2: qa_howto_square2_ff
> 3: Test command: /bin/sh 
"/home/ttracy/Documents/src/gnuradio/gr-howto-write-a-block/build/python/qa_howto_test.sh"
> 3:   File 
"/usr/local/lib/python2.7/dist-packages/gnuradio/gr/gnuradio_core_runtime.py", 
line 22, in swig_import_helper
> Total Test time (real) =   0.06 sec
> Tom
>

Perfect, thank you!

                   Sincerely,
          Tommy James Tracy II
            PhD Student
High Performance Low Power Lab
           University of Virginia
Please log in before posting. Registration is free and takes only a minute.
Existing account (Switch to SSL-encrypted connection)
NEW: Do you have a Google/GoogleMail or Yahoo account? No registration required!
Log in with Google account | Log in with Yahoo account
No account? Register here.