FYI: svn-current build problem


#1

G’day,

I’m currently seeing this when attempting to compile svn-current
revision
4315.

g++ -DHAVE_CONFIG_H -I. -I…/…/…/…
-I…/…/…/…/gnuradio-core/src/lib/runtime
-I…/…/…/…/gnuradio-core/src/lib/general
-I…/…/…/…/gnuradio-core/src/lib/general
-I…/…/…/…/gnuradio-core/src/lib/gengen
-I…/…/…/…/gnuradio-core/src/lib/gengen
-I…/…/…/…/gnuradio-core/src/lib/filter
-I…/…/…/…/gnuradio-core/src/lib/filter
-I…/…/…/…/gnuradio-core/src/lib/reed-solomon
-I…/…/…/…/gnuradio-core/src/lib/io
-I…/…/…/…/gnuradio-core/src/lib/g72x
-I…/…/…/…/gnuradio-core/src/lib/omnithread
-I…/…/…/…/gnuradio-core/src/lib/swig
-I…/…/…/…/gnuradio-core/src/lib/swig -I/usr/pkg/include
-I/usr/pkg/include/python2.4 -I. -I/usr/pkg/include -g1 -O1 -Wall
-Woverloaded-virtual -pthread -MT
_gnuradio_swig_py_io_la-gnuradio_swig_py_io.lo -MD -MP -MF
.deps/_gnuradio_swig_py_io_la-gnuradio_swig_py_io.Tpo -c
gnuradio_swig_py_io.cc -fPIC -DPIC -o
.libs/_gnuradio_swig_py_io_la-gnuradio_swig_py_io.o
…/…/…/…/config.h: In function ‘double exp10(double)’:
…/…/…/…/config.h:417: error: redefinition of ‘double exp10(double)’
…/…/…/…/config.h:417: error: ‘double exp10(double)’ previously
defined
here
…/…/…/…/config.h: In function ‘double exp10(double)’:
…/…/…/…/config.h:417: error: redefinition of ‘double exp10(double)’
…/…/…/…/config.h:417: error: ‘double exp10(double)’ previously
defined
here
…/…/…/…/gnuradio-core/src/lib/io/gr_udp_source.cc: In member
function ‘virtual int gr_udp_source::work(int,
gr_vector_const_void_star&,
gr_vector_void_star&)’:
…/…/…/…/gnuradio-core/src/lib/io/gr_udp_source.cc:139: warning:
comparison
between signed and unsigned integer expressions
gmake[6]: *** [_gnuradio_swig_py_io_la-gnuradio_swig_py_io.lo] Error 1
gmake[6]: Leaving directory
/home/wulf/projects/gnuradio/gnuradio/gnuradio-core/src/lib/swig' gmake[5]: *** [all] Error 2 gmake[5]: Leaving directory/home/wulf/projects/gnuradio/gnuradio/gnuradio-core/src/lib/swig’

I haven’t had a chance to further investigate this as I’m preparing to
go
interstate. AFAIK, libm doesn’t support exp10() on NetBSD and hence it
shouldn’t be defined.

cheerio Berndt


#2

The current subversion build is broken on NetBSD, and probably on
other systems that don’t support the non-standard “exp10” function
(posix defines exp and log and log10, but not exp10).

config.h is trying to provide exp10 when it doesn’t exist by defining
an inline procedure using pow. This is fine, but config.h is not
protected against multiple inclusion and there’s also not a test for
multiple inclusion.

The file Berndt refers to apparently includes config.h twice. I
hand-edited in an #ifndef/#define/#endif and then things built.
I couldn’t even figure out how config.h gets included once.

The offending file is
gnuradio-core/src/lib/swig/gnuradio_swig_py_io.cc

With that change, and having a ‘python’ symlink (ticket #133), the
build completes.


#3

On Mon, Jan 29, 2007 at 12:01:11PM -0500, Greg T. wrote:

hand-edited in an #ifndef/#define/#endif and then things built.
I couldn’t even figure out how config.h gets included once.

The offending file is
gnuradio-core/src/lib/swig/gnuradio_swig_py_io.cc

With that change, and having a ‘python’ symlink (ticket #133), the
build completes.

Thanks. Will fix both.

Eric