Hi Marcus,

Thanks for the detailed instructions (and don't worry I understood the SWIG 
comment ;-) )

I did as you suggested and the Boost warning DID disappear - and it was only 
necessary to put the new FindBoost.cmake file in the gr-tutorial/cmake/Modules 
directory.

However, unfortunately that didn't - so far - stop the Attribute Error. Maybe I 
should scrap tutorial 4 and rebuild the flowgraph from scratch, as I first of 
all actually opened the grc with it already loaded (that was unfortunate and 
just because that was how I closed it on Friday actually) and got some 
library/program conflict messages, please see in attached 'output run grc' 
file, but I suppose that's just due to the Boost changes?

Then I did replace the module in the flowgraph but still get the Attribute 
error when I try to run it. I am using QT gui - I don't understand why it is 
mentioning 'wx-python' in the warnings but that may not be an/the issue ?

I will be grateful for any suggestions although I may not be able to try any of 
them out until Wednesday.

Regards
Jacqueline


From: Discuss-gnuradio 
[mailto:[email protected]] On Behalf Of 
Marcus Müller
Sent: 20 January 2017 16:37
To: [email protected]
Subject: Re: [Discuss-gnuradio] Module attribute error in C++ guided tutorial


Hi Jacqueline,

first of all: thanks for the excellent report! It's rare that we get such 
well-defined and -researched problem descriptions.

So, regarding SWIG, I guess "everyone" is about as smart as you are. I don't 
get that warning, though I'm using the same version of SWIG as you are - also, 
the same version of GCC. What differs between our systems (mine is a fedora 25) 
is that you're using a more recent Boost version - as we see from the errors, 
somethings amiss with that.

Now, Boost has a history of not having good autoconf and CMake scripts, and 
that could be exactly what's hurting us here - the FindBoost in my 
/usr/share/cmake/Modules has exactly the warning displayed at exactly the code 
line (744), but it also as a terrible long list of elseifs() before that simple 
ends for 1.62 - it seems that at least for my CMake Version, no one had the 
time to fix Boost detection. Luckily, that seems fixed upstream [1]!

Can you do two things:

1. go into your /usr/share/cmake-3.7/Modules/FindBoost.cmake , line 744, and 
verify the last elseif is "NOT Boost_VERSION VERSION_LESS 106100 AND 
Boost_VERSION VERSION_LESS 106200" ¹

2. if 1. is the case, go to [1], replace (maybe backup) your FindBoost.cmake 
with that (maybe putting it in your gr-tutorial/cmake/Modules directory 
suffices, here, but I'm not sure in which order cmake goes through the 
different directories) , empty your build dir (really, rm -rf 
gr-tutorial/build/*) and do things again. Does the Boost warning disappear? If 
it does, would be a nice time to let the upstream maintainer of Arch's Boost or 
Arch's cmake package know that this file needs updatin'.

3. Try again with tutorial 4.



Best regards,

Marcus

[1] https://github.com/Kitware/CMake/blob/master/Modules/FindBoost.cmake#L745

¹ somehow I feel someone missed the meaning of "elseif" here, but that might 
just be me
On 01/20/2017 04:37 PM, Jacqueline.Walker wrote:
Hello again,

Working through the python programmed modules in the guided tutorial and no 
problems but I get the same 'module attribute error' trying to complete the C++ 
tutorial.
Following directions exactly, files compile, block appears in GRC, can build 
the flowgraph but get the same execution error.
Please see text files attached with the error output and the outputs of the 
cmake..  and make commands. Obviously, there are warnings etc. that do not 
appear in the sample output as described in the tutorial. Could these be the 
cause of the error? I could not find any helpful information on swig warning 
302 for example beyond what it roughly means.

As before running on a completely up-to-date Archlinux 4.8.13 and GRC 3.7.10.1. 
I have removed and rebuilt everything several times but nothing works.

Thanks for any suggestions,
Jacqueline





_______________________________________________

Discuss-gnuradio mailing list

[email protected]<mailto:[email protected]>

https://lists.gnu.org/mailman/listinfo/discuss-gnuradio

18:10:54: Warning: Mismatch between the program and library build versions 
detected.
The library used 3.0 (wchar_t,compiler with C++ ABI 1010,wx 
containers,compatible with 2.8),
and wxPython used 3.0 (wchar_t,compiler with C++ ABI 1009,wx 
containers,compatible with 2.8).
<<< Welcome to GNU Radio Companion 3.7.10.1 >>>

Block paths:
        /usr/share/gnuradio/grc/blocks
        /usr/local/share/gnuradio/grc/blocks

Loading: "/home/jacqueline/gnuradio/tutorials/work/tutorial_four_1.grc"
>>> Done
-- The CXX compiler identification is GNU 6.3.1
-- The C compiler identification is GNU 6.3.1
-- 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
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Build type not specified: defaulting to release.
-- Boost version: 1.63.0
-- Found the following Boost libraries:
--   filesystem
--   system
-- Found PkgConfig: /usr/bin/pkg-config (found version "0.29.1") 
-- Checking for module 'cppunit'
--   Found cppunit, version 1.13.2
-- Found CPPUNIT: /usr/lib64/libcppunit.so;dl  
-- Could NOT find Doxygen (missing:  DOXYGEN_EXECUTABLE) 
Checking for GNU Radio Module: RUNTIME
-- Checking for module 'gnuradio-runtime'
--   Found gnuradio-runtime, version 3.7.10.1
 * INCLUDES=/usr/include
 * LIBS=/lib64/libgnuradio-runtime.so;/lib64/libgnuradio-pmt.so
-- Found GNURADIO_RUNTIME: 
/lib64/libgnuradio-runtime.so;/lib64/libgnuradio-pmt.so  
GNURADIO_RUNTIME_FOUND = TRUE
-- Found Git: /usr/bin/git  
CMake Warning (dev) at cmake/Modules/GrTest.cmake:45 (get_target_property):
  Policy CMP0026 is not set: Disallow use of the LOCATION target property.
  Run "cmake --help-policy CMP0026" for policy details.  Use the cmake_policy
  command to set the policy and suppress this warning.

  The LOCATION property should not be read from target "test-tutorial".  Use
  the target name directly with add_custom_command, or use the generator
  expression $<TARGET_FILE>, as appropriate.

Call Stack (most recent call first):
  lib/CMakeLists.txt:79 (GR_ADD_TEST)
This warning is for project developers.  Use -Wno-dev to suppress it.

-- Using install prefix: /usr/local
-- Building for version: v1.0-compat-xxx-xunknown / 1.0.0git
-- 
-- Checking for module SWIG
-- Found SWIG version 3.0.11.
-- Found SWIG: /usr/bin/swig  
-- Found PythonLibs: /usr/lib64/libpython2.7.so (found suitable version 
"2.7.13", minimum required is "2") 
-- Found PythonInterp: /usr/bin/python2 (found suitable version "2.7.13", 
minimum required is "2") 
-- Looking for sys/types.h
-- Looking for sys/types.h - found
-- Looking for stdint.h
-- Looking for stdint.h - found
-- Looking for stddef.h
-- Looking for stddef.h - found
-- Check size of size_t
-- Check size of size_t - done
-- Check size of unsigned int
-- Check size of unsigned int - done
-- Performing Test HAVE_WNO_UNUSED_BUT_SET_VARIABLE
-- Performing Test HAVE_WNO_UNUSED_BUT_SET_VARIABLE - Success
CMake Warning (dev) at cmake/Modules/GrTest.cmake:45 (get_target_property):
  Policy CMP0026 is not set: Disallow use of the LOCATION target property.
  Run "cmake --help-policy CMP0026" for policy details.  Use the cmake_policy
  command to set the policy and suppress this warning.

  The LOCATION property should not be read from target "gnuradio-tutorial".
  Use the target name directly with add_custom_command, or use the generator
  expression $<TARGET_FILE>, as appropriate.

Call Stack (most recent call first):
  python/CMakeLists.txt:45 (GR_ADD_TEST)
This warning is for project developers.  Use -Wno-dev to suppress it.

CMake Warning (dev) at cmake/Modules/GrTest.cmake:45 (get_target_property):
  Policy CMP0045 is not set: Error on non-existent target in
  get_target_property.  Run "cmake --help-policy CMP0045" for policy details.
  Use the cmake_policy command to set the policy and suppress this warning.

  get_target_property() called with non-existent target "/usr/bin/python2".
Call Stack (most recent call first):
  python/CMakeLists.txt:45 (GR_ADD_TEST)
This warning is for project developers.  Use -Wno-dev to suppress it.

CMake Warning (dev) at cmake/Modules/GrTest.cmake:45 (get_target_property):
  Policy CMP0045 is not set: Error on non-existent target in
  get_target_property.  Run "cmake --help-policy CMP0045" for policy details.
  Use the cmake_policy command to set the policy and suppress this warning.

  get_target_property() called with non-existent target
  
"/home/jacqueline/gnuradio/tutorials/work/gr-tutorial/python/qa_multiply_py_ff.py".
Call Stack (most recent call first):
  python/CMakeLists.txt:45 (GR_ADD_TEST)
This warning is for project developers.  Use -Wno-dev to suppress it.

CMake Warning (dev) at cmake/Modules/GrTest.cmake:45 (get_target_property):
  Policy CMP0026 is not set: Disallow use of the LOCATION target property.
  Run "cmake --help-policy CMP0026" for policy details.  Use the cmake_policy
  command to set the policy and suppress this warning.

  The LOCATION property should not be read from target "gnuradio-tutorial".
  Use the target name directly with add_custom_command, or use the generator
  expression $<TARGET_FILE>, as appropriate.

Call Stack (most recent call first):
  python/CMakeLists.txt:46 (GR_ADD_TEST)
This warning is for project developers.  Use -Wno-dev to suppress it.

CMake Warning (dev) at cmake/Modules/GrTest.cmake:45 (get_target_property):
  Policy CMP0045 is not set: Error on non-existent target in
  get_target_property.  Run "cmake --help-policy CMP0045" for policy details.
  Use the cmake_policy command to set the policy and suppress this warning.

  get_target_property() called with non-existent target "/usr/bin/python2".
Call Stack (most recent call first):
  python/CMakeLists.txt:46 (GR_ADD_TEST)
This warning is for project developers.  Use -Wno-dev to suppress it.

CMake Warning (dev) at cmake/Modules/GrTest.cmake:45 (get_target_property):
  Policy CMP0045 is not set: Error on non-existent target in
  get_target_property.  Run "cmake --help-policy CMP0045" for policy details.
  Use the cmake_policy command to set the policy and suppress this warning.

  get_target_property() called with non-existent target
  
"/home/jacqueline/gnuradio/tutorials/work/gr-tutorial/python/qa_qpsk_demod_py_cb.py".
Call Stack (most recent call first):
  python/CMakeLists.txt:46 (GR_ADD_TEST)
This warning is for project developers.  Use -Wno-dev to suppress it.

CMake Warning (dev) at cmake/Modules/GrTest.cmake:45 (get_target_property):
  Policy CMP0026 is not set: Disallow use of the LOCATION target property.
  Run "cmake --help-policy CMP0026" for policy details.  Use the cmake_policy
  command to set the policy and suppress this warning.

  The LOCATION property should not be read from target "gnuradio-tutorial".
  Use the target name directly with add_custom_command, or use the generator
  expression $<TARGET_FILE>, as appropriate.

Call Stack (most recent call first):
  python/CMakeLists.txt:47 (GR_ADD_TEST)
This warning is for project developers.  Use -Wno-dev to suppress it.

CMake Warning (dev) at cmake/Modules/GrTest.cmake:45 (get_target_property):
  Policy CMP0045 is not set: Error on non-existent target in
  get_target_property.  Run "cmake --help-policy CMP0045" for policy details.
  Use the cmake_policy command to set the policy and suppress this warning.

  get_target_property() called with non-existent target "/usr/bin/python2".
Call Stack (most recent call first):
  python/CMakeLists.txt:47 (GR_ADD_TEST)
This warning is for project developers.  Use -Wno-dev to suppress it.

CMake Warning (dev) at cmake/Modules/GrTest.cmake:45 (get_target_property):
  Policy CMP0045 is not set: Error on non-existent target in
  get_target_property.  Run "cmake --help-policy CMP0045" for policy details.
  Use the cmake_policy command to set the policy and suppress this warning.

  get_target_property() called with non-existent target
  
"/home/jacqueline/gnuradio/tutorials/work/gr-tutorial/python/qa_my_qpsk_demod_cb.py".
Call Stack (most recent call first):
  python/CMakeLists.txt:47 (GR_ADD_TEST)
This warning is for project developers.  Use -Wno-dev to suppress it.

CMake Warning (dev) at cmake/Modules/GrTest.cmake:45 (get_target_property):
  Policy CMP0026 is not set: Disallow use of the LOCATION target property.
  Run "cmake --help-policy CMP0026" for policy details.  Use the cmake_policy
  command to set the policy and suppress this warning.

  The LOCATION property should not be read from target "gnuradio-tutorial".
  Use the target name directly with add_custom_command, or use the generator
  expression $<TARGET_FILE>, as appropriate.

Call Stack (most recent call first):
  python/CMakeLists.txt:48 (GR_ADD_TEST)
This warning is for project developers.  Use -Wno-dev to suppress it.

CMake Warning (dev) at cmake/Modules/GrTest.cmake:45 (get_target_property):
  Policy CMP0045 is not set: Error on non-existent target in
  get_target_property.  Run "cmake --help-policy CMP0045" for policy details.
  Use the cmake_policy command to set the policy and suppress this warning.

  get_target_property() called with non-existent target "/usr/bin/python2".
Call Stack (most recent call first):
  python/CMakeLists.txt:48 (GR_ADD_TEST)
This warning is for project developers.  Use -Wno-dev to suppress it.

CMake Warning (dev) at cmake/Modules/GrTest.cmake:45 (get_target_property):
  Policy CMP0045 is not set: Error on non-existent target in
  get_target_property.  Run "cmake --help-policy CMP0045" for policy details.
  Use the cmake_policy command to set the policy and suppress this warning.

  get_target_property() called with non-existent target
  
"/home/jacqueline/gnuradio/tutorials/work/gr-tutorial/python/qa_my_qpsk_demod_cb.py".
Call Stack (most recent call first):
  python/CMakeLists.txt:48 (GR_ADD_TEST)
This warning is for project developers.  Use -Wno-dev to suppress it.

-- Could NOT find Doxygen (missing:  DOXYGEN_EXECUTABLE) 
-- Configuring done
-- Generating done
-- Build files have been written to: 
/home/jacqueline/gnuradio/tutorials/work/gr-tutorial/build
Scanning dependencies of target gnuradio-tutorial
[  5%] Building CXX object 
lib/CMakeFiles/gnuradio-tutorial.dir/my_qpsk_demod_cb_impl.cc.o
[ 11%] Linking CXX shared library libgnuradio-tutorial-1.0.0git.so
[ 11%] Built target gnuradio-tutorial
Scanning dependencies of target test-tutorial
[ 17%] Building CXX object lib/CMakeFiles/test-tutorial.dir/test_tutorial.cc.o
[ 23%] Building CXX object lib/CMakeFiles/test-tutorial.dir/qa_tutorial.cc.o
[ 29%] Building CXX object 
lib/CMakeFiles/test-tutorial.dir/qa_my_qpsk_demod_cb.cc.o
[ 35%] Linking CXX executable test-tutorial
[ 35%] Built target test-tutorial
Scanning dependencies of target tutorial_swig_swig_doc
[ 35%] Built target tutorial_swig_swig_doc
Scanning dependencies of target _tutorial_swig_swig_tag
[ 41%] Building CXX object 
swig/CMakeFiles/_tutorial_swig_swig_tag.dir/_tutorial_swig_swig_tag.cpp.o
[ 47%] Linking CXX executable _tutorial_swig_swig_tag
[ 47%] Built target _tutorial_swig_swig_tag
[ 52%] Generating tutorial_swig.tag
Scanning dependencies of target tutorial_swig_swig_2d0df
[ 58%] Building CXX object 
swig/CMakeFiles/tutorial_swig_swig_2d0df.dir/tutorial_swig_swig_2d0df.cpp.o
[ 64%] Linking CXX executable tutorial_swig_swig_2d0df
Swig source
/home/jacqueline/gnuradio/tutorials/work/gr-tutorial/swig/tutorial_swig.i:19: 
Warning 302: Identifier 'my_qpsk_demod_cb_sptr' redefined (ignored) (Renamed 
from 'shared_ptr< gr::tutorial::my_qpsk_demod_cb >'),
/home/jacqueline/gnuradio/tutorials/work/gr-tutorial/swig/tutorial_swig.i:17: 
Warning 302: previous definition of 'my_qpsk_demod_cb_sptr' (Renamed from 
'shared_ptr< gr::tutorial::my_qpsk_demod_cb >').
[ 64%] Built target tutorial_swig_swig_2d0df
Scanning dependencies of target _tutorial_swig
[ 70%] Building CXX object 
swig/CMakeFiles/_tutorial_swig.dir/tutorial_swigPYTHON_wrap.cxx.o
[ 76%] Linking CXX shared module _tutorial_swig.so
[ 76%] Built target _tutorial_swig
Scanning dependencies of target pygen_swig_35ed0
[ 82%] Generating tutorial_swig.pyc
[ 88%] Generating tutorial_swig.pyo
[ 88%] Built target pygen_swig_35ed0
Scanning dependencies of target pygen_python_390d3
[ 94%] Generating __init__.pyc, multiply_py_ff.pyc, qpsk_demod_py_cb.pyc
[100%] Generating __init__.pyo, multiply_py_ff.pyo, qpsk_demod_py_cb.pyo
[100%] Built target pygen_python_390d3
Scanning dependencies of target pygen_apps_9a6dd
[100%] Built target pygen_apps_9a6dd
[ 11%] Built target gnuradio-tutorial
[ 35%] Built target test-tutorial
[ 35%] Built target tutorial_swig_swig_doc
[ 47%] Built target _tutorial_swig_swig_tag
[ 64%] Built target tutorial_swig_swig_2d0df
[ 76%] Built target _tutorial_swig
[ 88%] Built target pygen_swig_35ed0
[100%] Built target pygen_python_390d3
[100%] Built target pygen_apps_9a6dd
Install the project...
-- Install configuration: "Release"
-- Up-to-date: /usr/local/lib/cmake/tutorial/tutorialConfig.cmake
-- Up-to-date: /usr/local/include/tutorial/api.h
-- Up-to-date: /usr/local/include/tutorial/my_qpsk_demod_cb.h
-- Up-to-date: /usr/local/include/tutorial/my_qpsk_demod_cb.h
-- Installing: /usr/local/lib/libgnuradio-tutorial-1.0.0git.so.0.0.0
-- Up-to-date: /usr/local/lib/libgnuradio-tutorial-1.0.0git.so
-- Up-to-date: /usr/local/lib/libgnuradio-tutorial.so
-- Up-to-date: /usr/local/lib/libgnuradio-tutorial-1.0.0git.so.0
-- Installing: /usr/local/lib/python2.7/site-packages/tutorial/_tutorial_swig.so
-- Set runtime path of 
"/usr/local/lib/python2.7/site-packages/tutorial/_tutorial_swig.so" to ""
-- Installing: /usr/local/lib/python2.7/site-packages/tutorial/tutorial_swig.py
-- Installing: /usr/local/lib/python2.7/site-packages/tutorial/tutorial_swig.pyc
-- Installing: /usr/local/lib/python2.7/site-packages/tutorial/tutorial_swig.pyo
-- Up-to-date: /usr/local/include/tutorial/tutorial/swig/tutorial_swig.i
-- Installing: /usr/local/include/tutorial/tutorial/swig/tutorial_swig_doc.i
-- Up-to-date: /usr/local/lib/python2.7/site-packages/tutorial/__init__.py
-- Up-to-date: /usr/local/lib/python2.7/site-packages/tutorial/multiply_py_ff.py
-- Up-to-date: 
/usr/local/lib/python2.7/site-packages/tutorial/qpsk_demod_py_cb.py
-- Installing: /usr/local/lib/python2.7/site-packages/tutorial/__init__.pyc
-- Installing: 
/usr/local/lib/python2.7/site-packages/tutorial/multiply_py_ff.pyc
-- Installing: 
/usr/local/lib/python2.7/site-packages/tutorial/qpsk_demod_py_cb.pyc
-- Installing: /usr/local/lib/python2.7/site-packages/tutorial/__init__.pyo
-- Installing: 
/usr/local/lib/python2.7/site-packages/tutorial/multiply_py_ff.pyo
-- Installing: 
/usr/local/lib/python2.7/site-packages/tutorial/qpsk_demod_py_cb.pyo
-- Up-to-date: /usr/local/share/gnuradio/grc/blocks/tutorial_multiply_py_ff.xml
-- Up-to-date: 
/usr/local/share/gnuradio/grc/blocks/tutorial_qpsk_demod_py_cb.xml
-- Up-to-date: 
/usr/local/share/gnuradio/grc/blocks/tutorial_my_qpsk_demod_cb.xml
-- Up-to-date: 
/usr/local/share/gnuradio/grc/blocks/tutorial_my_qpsk_demod_cb.xml
_______________________________________________
Discuss-gnuradio mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio

Reply via email to