Forum: GNU Radio Error building gnuradio 3.4.2 on ubuntu 12.04 (usrp_prims.cc file error)

Posted by Sundus Tahir (Guest)
on 2013-03-03 16:21
(Received via mailing list)
Hello all,

I am trying to build gnuradio 3.4.2 on ubuntu 12.04 and I am getting an 
error running the make -j 8 command. It is a swig problem, according to 
this discussion in the archives:

"From:   Tom Rondeau
Subject:   Re: [Discuss-gnuradio] Build error GNU Radio release 
v3.3.1git-971-ga02bb131
Date:   Sun, 27 Feb 2011 17:38:48 -0500
On Sun, Feb 27, 2011 at 6:51 AM, Arya Santini <address@hidden> wrote:

    Hi Jared, thanks for that suggestion.

    Anyway, I realized that I was using GNU compiler gcc-4.6
    (experimental) which apparently imposes stricter rules and allows
    package builds to fail where previous versions used to succeed. So 
the
    suggested fix for one typical "ptrdiff_t does not name a type" is
    #include <cstddef.h>, which I did in the
    /usrp/host/swig/python/usrp_prims.cc file, and the build completed 
to
    success.

    Arya


Thanks for bringing this up (and for the solution). The usrp_prims.cc 
file is actually generated by SWIG, so I've explicitly included stddef.h 
into the .i file, which is done for most of the other SWIG files already 
for other reasons. This really seems like a SWIG problem, so hopefully 
this will be fixed in future releases before the new GCC takes over. 
Hopefully, this fixes our last hole, anyways.

I'll be pushing changes to next and master soon.

Tom"

I have tried the solution suggested (including the cstddef.h file in 
usrp_prisms.cc) but this does not work.
Can someone help me out with this? The error I get is as follows:

"make[5]: Leaving directory 
`/home/ayiesha/Downloads/gnuradio-3.4.2/usrp/host/apps'
Making all in swig
make[5]: Entering directory 
`/home/ayiesha/Downloads/gnuradio-3.4.2/usrp/host/swig'
make  all-am
make[6]: Entering directory 
`/home/ayiesha/Downloads/gnuradio-3.4.2/usrp/host/swig'
/bin/bash ../../../libtool  --tag=CXX   --mode=compile g++ 
-DHAVE_CONFIG_H -I. -I../../.. 
-I/home/ayiesha/Downloads/gnuradio-3.4.2/usrp/host/include 
-I/home/ayiesha/Downloads/gnuradio-3.4.2/usrp/host/include 
-I/home/ayiesha/Downloads/gnuradio-3.4.2/usrp/firmware/include -I. 
-I/usr/include/python2.7 -I/usr/local/include 
-I/home/dfe/Archive/boost_1_44_0 -g -O1 -Wno-strict-aliasing 
-Wno-parentheses -I../../..  -pthread -MT _usrp_prims_la-usrp_prims.lo 
-MD -MP -MF .deps/_usrp_prims_la-usrp_prims.Tpo -c -o 
_usrp_prims_la-usrp_prims.lo `test -f 'python/usrp_prims.cc' || echo 
'./'`python/usrp_prims.cc
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I../../.. 
-I/home/ayiesha/Downloads/gnuradio-3.4.2/usrp/host/include 
-I/home/ayiesha/Downloads/gnuradio-3.4.2/usrp/host/include 
-I/home/ayiesha/Downloads/gnuradio-3.4.2/usrp/firmware/include -I. 
-I/usr/include/python2.7 -I/usr/local/include 
-I/home/dfe/Archive/boost_1_44_0 -g -O1 -Wno-strict-aliasing 
-Wno-parentheses -I../../.. -pthread -MT _usrp_prims_la-usrp_prims.lo 
-MD -MP -MF .deps/_usrp_prims_la-usrp_prims.Tpo -c python/usrp_prims.cc 
-fPIC -DPIC -o .libs/_usrp_prims_la-usrp_prims.o
python/usrp_prims.cc: In function void SWIG_Python_AddErrorMsg(const 
char*):
python/usrp_prims.cc:871:42: warning: format not a string literal and no 
format arguments [-Wformat-security]
python/usrp_prims.cc: At global scope:
python/usrp_prims.cc:2636:13: error: ptrdiff_t does not name a type
python/usrp_prims.cc:2662:21: error: expected ; at end of member 
declaration
python/usrp_prims.cc:2662:39: error: expected ) before n
python/usrp_prims.cc:2677:34: error: declaration of operator+= as 
non-function
python/usrp_prims.cc:2677:30: error: expected ; at end of member 
declaration
python/usrp_prims.cc:2677:44: error: expected ) before n
python/usrp_prims.cc:2682:34: error: declaration of operator-= as 
non-function
python/usrp_prims.cc:2682:30: error: expected ; at end of member 
declaration
python/usrp_prims.cc:2682:44: error: expected ) before n
python/usrp_prims.cc:2687:33: error: declaration of operator+ as 
non-function
python/usrp_prims.cc:2687:30: error: expected ; at end of member 
declaration
python/usrp_prims.cc:2687:43: error: expected ) before n
python/usrp_prims.cc:2692:33: error: declaration of operator- as 
non-function
python/usrp_prims.cc:2692:30: error: expected ; at end of member 
declaration
python/usrp_prims.cc:2692:43: error: expected ) before n
python/usrp_prims.cc:2697:5: error: ptrdiff_t does not name a type
python/usrp_prims.cc:2853:23: error: SWIG_From_ptrdiff_t declared as an 
inline variable
python/usrp_prims.cc:2853:23: error: ptrdiff_t was not declared in this 
scope
python/usrp_prims.cc:2853:23: note: suggested alternatives:
/usr/include/c++/4.6/i686-linux-gnu/./bits/c++config.h:156:28: note: 
std::ptrdiff_t
/usr/include/c++/4.6/i686-linux-gnu/./bits/c++config.h:156:28: note: 
std::ptrdiff_t
python/usrp_prims.cc:2854:1: error: expected , or ; before { token
python/usrp_prims.cc:2906:39: error: ptrdiff_t has not been declared
python/usrp_prims.cc: In function int SWIG_AsVal_ptrdiff_t(PyObject*, 
int*):
python/usrp_prims.cc:2910:50: error: expected type-specifier before 
ptrdiff_t
python/usrp_prims.cc:2910:50: error: expected > before ptrdiff_t
python/usrp_prims.cc:2910:50: error: expected ( before ptrdiff_t
python/usrp_prims.cc:2910:50: error: ptrdiff_t was not declared in this 
scope
python/usrp_prims.cc:2910:50: note: suggested alternatives:
/usr/include/c++/4.6/i686-linux-gnu/./bits/c++config.h:156:28: note: 
std::ptrdiff_t
/usr/include/c++/4.6/i686-linux-gnu/./bits/c++config.h:156:28: note: 
std::ptrdiff_t
python/usrp_prims.cc:2910:64: error: expected ) before ; token
python/usrp_prims.cc: In function PyObject* 
_wrap_PySwigIterator_distance(PyObject*, PyObject*, PyObject*):
python/usrp_prims.cc:3365:52: error: const struct swig::PySwigIterator 
has no member named distance
python/usrp_prims.cc:3371:67: error: SWIG_From_ptrdiff_t cannot be used 
as a function
python/usrp_prims.cc: In function PyObject* 
_wrap_PySwigIterator_advance(PyObject*, PyObject*, PyObject*):
python/usrp_prims.cc:3534:58: error: arg1->swig::PySwigIterator::advance 
cannot be used as a function
python/usrp_prims.cc: In function PyObject* 
_wrap_PySwigIterator___iadd__(PyObject*, PyObject*, PyObject*):
python/usrp_prims.cc:3653:60: error: struct swig::PySwigIterator has no 
member named operator+=
python/usrp_prims.cc: In function PyObject* 
_wrap_PySwigIterator___isub__(PyObject*, PyObject*, PyObject*):
python/usrp_prims.cc:3700:60: error: struct swig::PySwigIterator has no 
member named operator-=
python/usrp_prims.cc: In function PyObject* 
_wrap_PySwigIterator___add__(PyObject*, PyObject*, PyObject*):
python/usrp_prims.cc:3746:85: error: const struct swig::PySwigIterator 
has no member named operator+
python/usrp_prims.cc: In function PyObject* 
_wrap_PySwigIterator___sub____SWIG_0(PyObject*, PyObject*):
python/usrp_prims.cc:3787:85: error: const struct swig::PySwigIterator 
has no member named operator-
python/usrp_prims.cc: In function PyObject* 
_wrap_PySwigIterator___sub____SWIG_1(PyObject*, PyObject*):
python/usrp_prims.cc:3830:59: error: const struct swig::PySwigIterator 
has no member named operator-
python/usrp_prims.cc:3831:67: error: SWIG_From_ptrdiff_t cannot be used 
as a function
make[6]: *** [_usrp_prims_la-usrp_prims.lo] Error 1
make[6]: Leaving directory 
`/home/ayiesha/Downloads/gnuradio-3.4.2/usrp/host/swig'
make[5]: *** [all] Error 2
make[5]: Leaving directory 
`/home/ayiesha/Downloads/gnuradio-3.4.2/usrp/host/swig'
make[4]: *** [all-recursive] Error 1
make[4]: Leaving directory 
`/home/ayiesha/Downloads/gnuradio-3.4.2/usrp/host'
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory `/home/ayiesha/Downloads/gnuradio-3.4.2/usrp'
make[2]: *** [all] Error 2
make[2]: Leaving directory `/home/ayiesha/Downloads/gnuradio-3.4.2/usrp'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/ayiesha/Downloads/gnuradio-3.4.2'
make: *** [all] Error 2
"
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.