Hi Gregor,

On 21/01/2019 16.39, gregor christandl wrote:
gregor@gregor-laptop ~/temp/gr-osmosdr/build $ make
Scanning dependencies of target gnuradio-osmosdr
[  2%] Building CXX object lib/CMakeFiles/gnuradio-osmosdr.dir/source_impl.cc.o In file included from /home/gregor/temp/gr-osmosdr/lib/bladerf/bladerf_source_c.h:26:0,                  from /home/gregor/temp/gr-osmosdr/lib/source_impl.cc:72: /home/gregor/temp/gr-osmosdr/lib/bladerf/bladerf_common.h:291:50: error: ‘>>’ should be ‘> >’ within a nested template argument list    static std::list<boost::weak_ptr<struct bladerf>> _devs;  /**< dev cache */

I'm running Linux Mint 18.3 Sylvia and am trying to compile for GNU Radio 3.7 (which I installed via pybombs), gcc version 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.11).

It seems it can't be compiled with certain gcc versions. You could manually apply the following changes from https://github.com/Nuand/bladeRF/issues/684#issuecomment-434389842

Quick fix would be to edit bladerf_common.h:291 (and any other lines it errors out on) to change:

|static std::list<boost::weak_ptr<struct bladerf>> _devs; /**< dev cache */|

to:

|static std::list<boost::weak_ptr<struct bladerf> > _devs; /**< dev cache */|

These three lines in bladerf_common.cc will likely also need changing:

|bladerf_common.cc:54:std::list<boost::weak_ptr<struct bladerf>> bladerf_common::_devs; bladerf_common.cc:1112: _devs.push_back(static_cast<boost::weak_ptr<struct bladerf>>(dev)); bladerf_common.cc:1120: std::list<boost::weak_ptr<struct bladerf>>::iterator it(_devs.begin()); |
Or you could try to update your compiler to a more recent version.

Reply via email to