Bug#456041: FTBFS with GCC 4.3: missing #includes

Martin Michlmayr tbm at cyrius.com
Thu Dec 13 03:07:03 UTC 2007


Package: boinc
Version: 5.10.30-1
Usertags: ftbfs-gcc-4.3

Your package fails to build with GCC 4.3.  Version 4.3 has not been
released yet but I'm building with a snapshot in order to find errors
and give people an advance warning.  In GCC 4.3, the C++ header
dependencies have been cleaned up.  The advantage of this is that
programs will compile faster.  The downside is that you actually
need to directly #include everything you use (but you really should
do this anyway, otherwise your program won't work with any compiler
other than GCC).  There's some more information about this at
http://www.cyrius.com/journal/2007/05/10#gcc-4.3-include

You can reproduce this problem with gcc-snapshot from unstable.  Note
that Red Hat, Novell and Ubuntu have done some work getting packages
to build with GCC 4.3 so there might be patches floating around
somewhere.  I suggest you talk to your upstream.

> Automatic build of boinc_5.10.30-1 on em64t by sbuild/amd64 0.53
...
> Making all in api
> make[3]: Entering directory `/build/tbm/boinc-5.10.30/api'
> if g++ -DHAVE_CONFIG_H -I. -I. -I..  -I../lib -I../api -I../db -I../client -I../tools -I../sched -I../lib/mac  -pthread  -I../lib -I../api -I../db -I../client -I../tools -I../sched -I../lib/mac  -pthread -g -Wall -O3 -I/usr/include -I/usr/include/openssl -pthread -MT boinc_api.o -MD -MP -MF ".deps/boinc_api.Tpo" -c -o boinc_api.o boinc_api.C; \
> 	then mv -f ".deps/boinc_api.Tpo" ".deps/boinc_api.Po"; else rm -f ".deps/boinc_api.Tpo"; exit 1; fi
> In file included from boinc_api.C:47:
> ../lib/parse.h: In function 'bool match_tag(const char*, const char*)':
> ../lib/parse.h:64: error: 'strstr' was not declared in this scope
> ../lib/parse.h: In function 'bool parse_int(const char*, const char*, int&)':
> ../lib/parse.h:77: error: 'strstr' was not declared in this scope
> ../lib/parse.h:79: error: 'strlen' was not declared in this scope
> ../lib/parse.h: In function 'bool parse_double(const char*, const char*, double&)':
> ../lib/parse.h:87: error: 'strstr' was not declared in this scope
> ../lib/parse.h:89: error: 'strlen' was not declared in this scope
> make[3]: *** [boinc_api.o] Error 1
> make[3]: Leaving directory `/build/tbm/boinc-5.10.30/api'
> make[2]: *** [all-recursive] Error 1

-- 
Martin Michlmayr
http://www.cyrius.com/





More information about the pkg-boinc-devel mailing list