[Hackrf-dev] Hi & 1st stupid question... :)

Brandon Creighton cstone at pobox.com
Mon Jun 17 15:56:23 EDT 2013


I'm not sure it's a GCC issue. In GR 3.7.0, both the names of the
header files and the names of many GR types have changed.
Additionally, the names of some packages (gnuradio-core) and the cmake
scripts/pkg-config spec files that GR installs to locate itself have
changed.

If you've got GR 3.6 installed, try the gr3.6 branch of gr-osmosdr.
If 3.7, then current should work.

If you've recently installed 3.7 on top of an existing 3.6 (or
earlier) installation, the above changes could cause some ugly
problems. Something's #including <math.h> in order to get some
standard C math functions (acos, sin, etc.); but the compilation chain
is finding <gnuradio/math.h> instead.

See if this fixes the problem:
1) first, ensure you've got the correct versions of both GR and
gr-osmosdr checked out;
2) then, remove all trace of any existing GR installation from
your system. This includes the header files, libraries, cmake data,
pkg-config .pc files, and anything else. (On my system, this
basically amounts to doing a find(1) in /usr/local and deleting
everything with 'gnuradio' or 'gruel' in the name, but it's probably
wise to look at what that includes before doing a blind rm.)
3) Reinstall GR. (You probably don't have to rebuild it.)
4) Try again.

Hope this helps,
--cstone

On Mon, Jun 17, 2013 at 11:28 AM, Adam Laurie <adam at aperturelabs.com> wrote:

>

> Hi All,

>

> I'm on vacation and using a mobile sim data connection which is slow and painful, so apologies in advance if I could have simply looked this up somewhere, but I'm having serious problems getting stuff to build...

>

> I managed to update the hackrf board itself, but trying to get gnu-radio etc to build is proving impossible... Is there a detailed build instruction set somewhere?

>

> I'm currently trying to do it piecemeal, and I'm now at this stage:

>

> http://sdr.osmocom.org/trac/wiki/GrOsmoSDR

>

> I have two issues... First, I can't figure out how to get IQ Imbalance Correction enabled, and secondly, and probably more seriously, when I try to make I get:

>

> $ make

> Scanning dependencies of target gnuradio-osmosdr

> [ 2%] Building CXX object lib/CMakeFiles/gnuradio-osmosdr.dir/osmosdr_source_c_impl.cc.o

> In file included from /usr/local/include/gnuradio/math.h:30:0,

> from /usr/include/c++/4.6/cmath:46,

> from /usr/include/c++/4.6/complex:46,

> from /usr/local/include/gnuradio/gr_complex.h:25,

> from /usr/local/include/gnuradio/gr_types.h:31,

> from /usr/local/include/gnuradio/gr_runtime_types.h:27,

> from /usr/local/include/gnuradio/gr_basic_block.h:27,

> from /usr/local/include/gnuradio/gr_hier_block2.h:26,

> from /home/software/unpacked/gnuradio-autobuilder/gr-osmosdr/include/osmosdr/osmosdr_source_c.h:25,

> from /home/software/unpacked/gnuradio-autobuilder/gr-osmosdr/lib/osmosdr_source_c_impl.h:23,

> from /home/software/unpacked/gnuradio-autobuilder/gr-osmosdr/lib/osmosdr_source_c_impl.cc:30:

> /usr/include/c++/4.6/cmath:99:11: error: ‘::acos’ has not been declared

> /usr/include/c++/4.6/cmath:115:11: error: ‘::asin’ has not been declared

> /usr/include/c++/4.6/cmath:131:11: error: ‘::atan’ has not been declared

> /usr/include/c++/4.6/cmath:147:11: error: ‘::atan2’ has not been declared

> /usr/include/c++/4.6/cmath:169:11: error: ‘::ceil’ has not been declared

> /usr/include/c++/4.6/cmath:185:11: error: ‘::cos’ has not been declared

> /usr/include/c++/4.6/cmath:201:11: error: ‘::cosh’ has not been declared

> /usr/include/c++/4.6/cmath:217:11: error: ‘::exp’ has not been declared

> /usr/include/c++/4.6/cmath:233:11: error: ‘::fabs’ has not been declared

> /usr/include/c++/4.6/cmath:249:11: error: ‘::floor’ has not been declared

> /usr/include/c++/4.6/cmath:265:11: error: ‘::fmod’ has not been declared

> /usr/include/c++/4.6/cmath:275:11: error: ‘::frexp’ has not been declared

> /usr/include/c++/4.6/cmath:291:11: error: ‘::ldexp’ has not been declared

> /usr/include/c++/4.6/cmath:307:11: error: ‘::log’ has not been declared

> /usr/include/c++/4.6/cmath:323:11: error: ‘::log10’ has not been declared

> /usr/include/c++/4.6/cmath:339:11: error: ‘::modf’ has not been declared

> /usr/include/c++/4.6/cmath:349:11: error: ‘::pow’ has not been declared

> /usr/include/c++/4.6/cmath:387:11: error: ‘::sin’ has not been declared

> /usr/include/c++/4.6/cmath:403:11: error: ‘::sinh’ has not been declared

> /usr/include/c++/4.6/cmath:419:11: error: ‘::sqrt’ has not been declared

> /usr/include/c++/4.6/cmath:435:11: error: ‘::tan’ has not been declared

> /usr/include/c++/4.6/cmath:451:11: error: ‘::tanh’ has not been declared

> /usr/include/c++/4.6/cmath: In function ‘typename __gnu_cxx::__enable_if<std::__is_arithmetic<_Tp>::__value, int>::__type std::fpclassify(_Tp)’:

> /usr/include/c++/4.6/cmath:743:35: error: ‘FP_NAN’ was not declared in this scope

> /usr/include/c++/4.6/cmath:743:43: error: ‘FP_INFINITE’ was not declared in this scope

> /usr/include/c++/4.6/cmath:743:56: error: ‘FP_NORMAL’ was not declared in this scope

> /usr/include/c++/4.6/cmath:744:7: error: ‘FP_SUBNORMAL’ was not declared in this scope

> /usr/include/c++/4.6/cmath:744:21: error: ‘FP_ZERO’ was not declared in this scope

> In file included from /usr/include/c++/4.6/cmath:46:0,

> from /usr/include/c++/4.6/complex:46,

> from /usr/local/include/gnuradio/gr_complex.h:25,

> from /usr/local/include/gnuradio/gr_types.h:31,

> from /usr/local/include/gnuradio/gr_runtime_types.h:27,

> from /usr/local/include/gnuradio/gr_basic_block.h:27,

> from /usr/local/include/gnuradio/gr_hier_block2.h:26,

> from /home/software/unpacked/gnuradio-autobuilder/gr-osmosdr/include/osmosdr/osmosdr_source_c.h:25,

> from /home/software/unpacked/gnuradio-autobuilder/gr-osmosdr/lib/osmosdr_source_c_impl.h:23,

> from /home/software/unpacked/gnuradio-autobuilder/gr-osmosdr/lib/osmosdr_source_c_impl.cc:30:

> /usr/local/include/gnuradio/math.h: At global scope:

> /usr/local/include/gnuradio/math.h:61:15: error: ‘gr::fast_atan2f’ declared as an ‘inline’ variable

> /usr/local/include/gnuradio/math.h:61:15: error: ‘float gr::fast_atan2f’ redeclared as different kind of symbol

> /usr/local/include/gnuradio/math.h:58:24: error: previous declaration of ‘float gr::fast_atan2f(float, float)’

> /usr/local/include/gnuradio/math.h:61:15: error: ‘gr_complex’ was not declared in this scope

> /usr/local/include/gnuradio/math.h: In function ‘float gr::branchless_clip(float, float)’:

> /usr/local/include/gnuradio/math.h:70:28: error: ‘fabsf’ was not declared in this scope

> /usr/local/include/gnuradio/math.h: In function ‘unsigned int gr::quad_0deg_slicer(float, float)’:

> /usr/local/include/gnuradio/math.h:116:15: error: ‘fabsf’ was not declared in this scope

> /usr/local/include/gnuradio/math.h: At global scope:

> /usr/local/include/gnuradio/math.h:133:21: error: ‘gr::quad_45deg_slicer’ declared as an ‘inline’ variable

> /usr/local/include/gnuradio/math.h:133:21: error: ‘unsigned int gr::quad_45deg_slicer’ redeclared as different kind of symbol

> /usr/local/include/gnuradio/math.h:98:3: error: previous declaration of ‘unsigned int gr::quad_45deg_slicer(float, float)’

> /usr/local/include/gnuradio/math.h:133:21: error: ‘gr_complex’ was not declared in this scope

> /usr/local/include/gnuradio/math.h:139:20: error: ‘gr::quad_0deg_slicer’ declared as an ‘inline’ variable

> /usr/local/include/gnuradio/math.h:139:20: error: ‘unsigned int gr::quad_0deg_slicer’ redeclared as different kind of symbol

> /usr/local/include/gnuradio/math.h:113:3: error: previous declaration of ‘unsigned int gr::quad_0deg_slicer(float, float)’

> /usr/local/include/gnuradio/math.h:139:20: error: ‘gr_complex’ was not declared in this scope

> /usr/local/include/gnuradio/math.h: In function ‘unsigned int gr::branchless_quad_0deg_slicer(float, float)’:

> /usr/local/include/gnuradio/math.h:155:20: error: ‘fabsf’ was not declared in this scope

> /usr/local/include/gnuradio/math.h: At global scope:

> /usr/local/include/gnuradio/math.h:162:31: error: ‘gr::branchless_quad_0deg_slicer’ declared as an ‘inline’ variable

> /usr/local/include/gnuradio/math.h:162:31: error: ‘unsigned int gr::branchless_quad_0deg_slicer’ redeclared as different kind of symbol

> /usr/local/include/gnuradio/math.h:152:3: error: previous declaration of ‘unsigned int gr::branchless_quad_0deg_slicer(float, float)’

> /usr/local/include/gnuradio/math.h:162:31: error: ‘gr_complex’ was not declared in this scope

> /usr/local/include/gnuradio/math.h:176:32: error: ‘gr::branchless_quad_45deg_slicer’ declared as an ‘inline’ variable

> /usr/local/include/gnuradio/math.h:176:32: error: ‘unsigned int gr::branchless_quad_45deg_slicer’ redeclared as different kind of symbol

> /usr/local/include/gnuradio/math.h:168:3: error: previous declaration of ‘unsigned int gr::branchless_quad_45deg_slicer(float, float)’

> /usr/local/include/gnuradio/math.h:176:32: error: ‘gr_complex’ was not declared in this scope

> In file included from /usr/local/include/boost/functional/hash/hash.hpp:15:0,

> from /usr/local/include/boost/functional/hash.hpp:6,

> from /usr/local/include/boost/thread/detail/thread.hpp:37,

> from /usr/local/include/boost/thread/thread.hpp:22,

> from /usr/local/include/gruel/thread.h:25,

> from /usr/local/include/gnuradio/gr_basic_block.h:36,

> from /usr/local/include/gnuradio/gr_hier_block2.h:26,

> from /home/software/unpacked/gnuradio-autobuilder/gr-osmosdr/include/osmosdr/osmosdr_source_c.h:25,

> from /home/software/unpacked/gnuradio-autobuilder/gr-osmosdr/lib/osmosdr_source_c_impl.h:23,

> from /home/software/unpacked/gnuradio-autobuilder/gr-osmosdr/lib/osmosdr_source_c_impl.cc:30:

> /usr/local/include/boost/functional/hash/detail/hash_float.hpp: In function ‘std::size_t boost::hash_detail::float_hash_value(T)’:

> /usr/local/include/boost/functional/hash/detail/hash_float.hpp:224:18: error: ‘FP_ZERO’ was not declared in this scope

> /usr/local/include/boost/functional/hash/detail/hash_float.hpp:226:18: error: ‘FP_INFINITE’ was not declared in this scope

> /usr/local/include/boost/functional/hash/detail/hash_float.hpp:228:18: error: ‘FP_NAN’ was not declared in this scope

> /usr/local/include/boost/functional/hash/detail/hash_float.hpp:230:18: error: ‘FP_NORMAL’ was not declared in this scope

> /usr/local/include/boost/functional/hash/detail/hash_float.hpp:231:18: error: ‘FP_SUBNORMAL’ was not declared in this scope

> make[2]: *** [lib/CMakeFiles/gnuradio-osmosdr.dir/osmosdr_source_c_impl.cc.o] Error 1

> make[1]: *** [lib/CMakeFiles/gnuradio-osmosdr.dir/all] Error 2

> make: *** [all] Error 2

>

> a bit of googling seems to imply that it's a GCC version thing, but before I start trying to replace my entire build environment I thought I'd better check....

>

> Any ideas?

>

> cheers,

> Adam

> --

> Adam Laurie Tel: +44 (0) 20 7993 2690

> Aperture Labs Ltd. Fax: +44 (0) 20 8972 9377

> Suite 117, Pegaxis House

> 61 Victoria Road

> Surbiton

> Surrey mailto:adam at aperturelabs.com

> KT6 4JX http://aperturelabs.com

> UNITED KINGDOM

> _______________________________________________

> HackRF-dev mailing list

> HackRF-dev at greatscottgadgets.com

> http://nine.pairlist.net/mailman/listinfo/hackrf-dev



More information about the HackRF-dev mailing list