It took me a while to get some time to go back to my openSUSE 11.3
machine and regenerate the error message. Sorry, I should have done this
when I made the initial post.
So I successfully installed the following from source under openSUSE
11.3:
Cheetah-2.4.2.1.tar.gz
Markdown-2.0.3.tar.gz
cppunit-1.12.1.tar.gz
fftw-3.2.2.tar.gz
gsl-1.14.tar.gz
numpy-1.4.1.tar.gz
sdcc-2.9.0-i386-unknown-linux2.5.tar.bz2
swig-1.3.40.tar.gz
Then I do a “./configure” for GNU Radio 3.3.0, and it runs fine, and it
reports it’s going to build everything that I need/that it should.
However, when I do a “make”, it runs for a while, but then I get these
errors:
libtool: compile: g++ -DHAVE_CONFIG_H -I. -I…/…/…
-I/opt/pkgs/gnuradio-3.3.0/usrp2/host/include
-I/opt/pkgs/gnuradio-3.3.0/usrp2/firmware/include -I/usr/include
-I/usr/include -I/opt/pkgs/gnuradio-3.3.0/gnuradio-core/src/lib/runtime
-I/opt/pkgs/gnuradio-3.3.0/gnuradio-core/src/lib/general
-I/opt/pkgs/gnuradio-3.3.0/gnuradio-core/src/lib/general
-I/opt/pkgs/gnuradio-3.3.0/gnuradio-core/src/lib/gengen
-I/opt/pkgs/gnuradio-3.3.0/gnuradio-core/src/lib/gengen
-I/opt/pkgs/gnuradio-3.3.0/gnuradio-core/src/lib/filter
-I/opt/pkgs/gnuradio-3.3.0/gnuradio-core/src/lib/filter
-I/opt/pkgs/gnuradio-3.3.0/gnuradio-core/src/lib/missing
-I/opt/pkgs/gnuradio-3.3.0/gnuradio-core/src/lib/reed-solomon
-I/opt/pkgs/gnuradio-3.3.0/gnuradio-core/src/lib/viterbi
-I/opt/pkgs/gnuradio-3.3.0/gnuradio-core/src/lib/io
-I/opt/pkgs/gnuradio-3.3.0/gnuradio-core/src/lib/g72x
-I/opt/pkgs/gnuradio-3.3.0/gnuradio-core/src/lib/swig
-I/opt/pkgs/gnuradio-3.3.0/gnuradio-core/src/lib/hier
-I/opt/pkgs/gnuradio-3.3.0/gnuradio-core/src/lib/swig
-I/usr/local/include -I/usr/local/include
-I/opt/pkgs/gnuradio-3.3.0/gruel/src/include
-I/opt/pkgs/gnuradio-3.3.0/gruel/src/include -I/usr/local/include
-I/opt/pkgs/gnuradio-3.3.0/gruel/src/include
-I/opt/pkgs/gnuradio-3.3.0/gruel/src/include -g -O2 -Wall
-Woverloaded-virtual -pthread -MT usrp2.lo -MD -MP -MF .deps/usrp2.Tpo
-c usrp2.cc -fPIC -DPIC -o .libs/usrp2.o
usrp2.cc:41:33: error: type/value mismatch at argument 1 in template
parameter list for ‘template class boost::weak_ptr’
usrp2.cc:41:33: error: expected a type, got ‘usrp2::usrp2::usrp2’
usrp2.cc:43:75: error: type/value mismatch at argument 1 in template
parameter list for ‘template class boost::weak_ptr’
usrp2.cc:43:75: error: expected a type, got ‘usrp2::usrp2::usrp2’
usrp2.cc: In static member function ‘static usrp2::usrp2::sptr
usrp2::usrp2::find_existing_or_make_new(const std::string&,
usrp2::props*, size_t)’:
usrp2.cc:60:20: error: request for member ‘expired’ in
‘p.__gnu_cxx::__normal_iterator<_Iterator, _Container>::operator-> with
_Iterator = usrp2::usrp_table_entry*, _Container =
std::vectorusrp2::usrp_table_entry,
__gnu_cxx::__normal_iterator<_Iterator, _Container>::pointer =
usrp2::usrp_table_entry*->usrp2::usrp_table_entry::value’, which is
of non-class type ‘int’
usrp2.cc:64:31: error: no matching function for call to
‘boost::shared_ptrusrp2::usrp2::shared_ptr(int&)’
/usr/include/boost/smart_ptr/shared_ptr.hpp:182:5: note: candidates are:
boost::shared_ptr< >::shared_ptr() [with T =
usrp2::usrp2]
/usr/include/boost/smart_ptr/shared_ptr.hpp:169:1: note:
boost::shared_ptrusrp2::usrp2::shared_ptr(const
boost::shared_ptrusrp2::usrp2&)
usrp2.cc:73:23: error: expected type-specifier
usrp2.cc:73:23: error: expected ‘)’
usrp2.cc:74:30: error: no matching function for call to
‘usrp2::usrp_table_entry::usrp_table_entry(std::string&,
usrp2::usrp2::sptr&)’
usrp2.cc:43:5: note: candidates are:
usrp2::usrp_table_entry::usrp_table_entry(const std::string&, int)
usrp2.cc:38:27: note:
usrp2::usrp_table_entry::usrp_table_entry(const
usrp2::usrp_table_entry&)
In file included from /usr/include/boost/shared_ptr.hpp:17:0,
from
/opt/pkgs/gnuradio-3.3.0/usrp2/host/include/usrp2/usrp2.h:22,
from usrp2.cc:23:
/usr/include/boost/smart_ptr/shared_ptr.hpp: In constructor
‘boost::shared_ptr< >::shared_ptr(Y*) [with Y =
int, T = usrp2::usrp2]’:
usrp2.cc:73:56: instantiated from here
/usr/include/boost/smart_ptr/shared_ptr.hpp:187:50: error: cannot
convert ‘int*’ to ‘usrp2::usrp2*’ in initialization
make[4]: *** [usrp2.lo] Error 1
make[4]: Leaving directory /opt/pkgs/gnuradio-3.3.0/usrp2/host/lib' make[3]: *** [all-recursive] Error 1 make[3]: Leaving directory/opt/pkgs/gnuradio-3.3.0/usrp2/host’
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory /opt/pkgs/gnuradio-3.3.0/usrp2' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory/opt/pkgs/gnuradio-3.3.0’
make: *** [all] Error 2
It looks like a problem with the Boost library. I don’t have this
problem in openSUSE 11.2 (which bundles gcc 4.4.1 and Boost 1.39), but
it is not working for me with openSUSE 11.3 (which bundles gcc 4.5.0 and
Boost 1.42). On this particular machine, I need to run specifically
openSUSE 11.3.
Any help would be very much appreciated.
Thanks!!
Steve McMahon