kappiman / beesat-sdr

GNU Radio modules to decode BEESAT telemetry and send Digipeater messages
https://git.tu-berlin.de/rft/com/mobitub-2
GNU General Public License v3.0
7 stars 7 forks source link

gr-tnc_nx does not compile #1

Open kevincroissant opened 5 years ago

kevincroissant commented 5 years ago

Hello,

I am trying to decode telemetry from BEESAT-9 to test the ground station I am building for Bobcat-1, and am unable to compile this module. System info:

/home/kevin/gnuradio-oot/beesat-sdr/gr-tnc_nx/build [git::master] [kevin@nitrogen] [15:37]
> gnuradio-config-info -v
3.7.13.4

/home/kevin/gnuradio-oot/beesat-sdr/gr-tnc_nx/build [git::master] [kevin@nitrogen] [15:37]
> cat /etc/debian_version 
10.0

Here is the output of make:

/home/kevin/gnuradio-oot/beesat-sdr/gr-tnc_nx/build [git::master] [kevin@nitrogen] [15:38]
> make
[  3%] Building CXX object lib/CMakeFiles/gnuradio-tnc_nx.dir/mobitex_coding.cc.o
[  6%] Building CXX object lib/CMakeFiles/gnuradio-tnc_nx.dir/frame_composer.cc.o
In file included from /home/kevin/gnuradio-oot/beesat-sdr/gr-tnc_nx/lib/frame_composer.cc:34:
/home/kevin/gnuradio-oot/beesat-sdr/gr-tnc_nx/include/tnc_nx/frame_composer.h:46:33: warning: ‘visibility’ attribute ignored [-Wattributes]
      TNC_NX_API mobitex_coding *mob;
                                 ^~~
[  9%] Building CXX object lib/CMakeFiles/gnuradio-tnc_nx.dir/nx_protocol.cc.o
[ 12%] Building CXX object lib/CMakeFiles/gnuradio-tnc_nx.dir/tnc_impl.cc.o
/home/kevin/gnuradio-oot/beesat-sdr/gr-tnc_nx/lib/tnc_impl.cc:29:4: warning: #warning "DEBUG STILL ON!" [-Wcpp]
   #warning "DEBUG STILL ON!"
    ^~~~~~~
In file included from /home/kevin/gnuradio-oot/beesat-sdr/gr-tnc_nx/lib/tnc_impl.cc:33:
/home/kevin/gnuradio-oot/beesat-sdr/gr-tnc_nx/lib/tnc_impl.h:58:27: warning: ‘visibility’ attribute ignored [-Wattributes]
       TNC_NX_API gscf_com g;
                           ^
/home/kevin/gnuradio-oot/beesat-sdr/gr-tnc_nx/lib/tnc_impl.cc: In member function ‘void gr::tnc_nx::tnc_impl::handle_timeout(const boost::system::error_code&)’:
/home/kevin/gnuradio-oot/beesat-sdr/gr-tnc_nx/lib/tnc_impl.cc:94:10: error: no match for ‘operator==’ (operand types are ‘const boost::system::error_code’ and ‘int’)
   if (ec == 0) {
       ~~~^~~~
/home/kevin/gnuradio-oot/beesat-sdr/gr-tnc_nx/lib/tnc_impl.cc:94:10: note: candidate: ‘operator==(int, int)’ <built-in>
/home/kevin/gnuradio-oot/beesat-sdr/gr-tnc_nx/lib/tnc_impl.cc:94:10: note:   no known conversion for argument 1 from ‘const boost::system::error_code’ to ‘int’
In file included from /usr/include/boost/system/system_error.hpp:14,
                 from /usr/include/boost/thread/exceptions.hpp:22,
                 from /usr/include/boost/thread/pthread/thread_data.hpp:10,
                 from /usr/include/boost/thread/thread_only.hpp:17,
                 from /usr/include/boost/thread/thread.hpp:12,
                 from /usr/include/gnuradio/thread/thread.h:26,
                 from /usr/include/gnuradio/basic_block.h:31,
                 from /usr/include/gnuradio/block.h:27,
                 from /home/kevin/gnuradio-oot/beesat-sdr/gr-tnc_nx/include/tnc_nx/tnc.h:28,
                 from /home/kevin/gnuradio-oot/beesat-sdr/gr-tnc_nx/lib/tnc_impl.h:27,
                 from /home/kevin/gnuradio-oot/beesat-sdr/gr-tnc_nx/lib/tnc_impl.cc:33:
/usr/include/boost/system/error_code.hpp:611:17: note: candidate: ‘bool boost::system::operator==(const boost::system::error_code&, const boost::system::error_condition&)’
     inline bool operator==( const error_code & code,
                 ^~~~~~~~
/usr/include/boost/system/error_code.hpp:611:17: note:   no known conversion for argument 2 from ‘int’ to ‘const boost::system::error_condition&’
/usr/include/boost/system/error_code.hpp:624:17: note: candidate: ‘bool boost::system::operator==(const boost::system::error_condition&, const boost::system::error_code&)’
     inline bool operator==( const error_condition & condition,
                 ^~~~~~~~
/usr/include/boost/system/error_code.hpp:624:17: note:   no known conversion for argument 1 from ‘const boost::system::error_code’ to ‘const boost::system::error_condition&’
/usr/include/boost/system/error_code.hpp:526:26: note: candidate: ‘bool boost::system::operator==(const boost::system::error_code&, const boost::system::error_code&)’
       inline friend bool operator==( const error_code & lhs,
                          ^~~~~~~~
/usr/include/boost/system/error_code.hpp:526:26: note:   no known conversion for argument 2 from ‘int’ to ‘const boost::system::error_code&’
make[2]: *** [lib/CMakeFiles/gnuradio-tnc_nx.dir/build.make:102: lib/CMakeFiles/gnuradio-tnc_nx.dir/tnc_impl.cc.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:141: lib/CMakeFiles/gnuradio-tnc_nx.dir/all] Error 2
make: *** [Makefile:141: all] Error 2

I believe I had this working before, about a year ago, when I decoded telemetry from an earlier BEESAT. So I think this may be an error caused by a package being updated and breaking compatibility. Please let me know if you need any more information.

kevincroissant commented 5 years ago

This also does not compile on the new GNURadio 3.8.0.

kappiman commented 5 years ago

Hi Kevin, thank you very much for the report. Since this was already reported by others (https://twitter.com/pe0sat/status/1147768774151606272), I will have a look at this, as soon as possible.