[DebianGIS-dev] Bug#456064: FTBFS with GCC 4.3: missing #includes

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


Package: qgis
Version: 0.8.1-2
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 qgis_0.8.1-2 on em64t by sbuild/amd64 0.53
...
> In file included from /usr/include/qt4/QtCore/QString:1,
>                  from /build/tbm/qgis-0.8.1/src/core/qgslogger.h:23,
>                  from /build/tbm/qgis-0.8.1/src/core/qgslogger.cpp:19:
> /usr/include/qt4/QtCore/qstring.h:787: warning: type qualifiers ignored on function return type
> /usr/include/qt4/QtCore/qstring.h:788: warning: type qualifiers ignored on function return type
> /usr/include/qt4/QtCore/qstring.h:789: warning: type qualifiers ignored on function return type
> /usr/include/qt4/QtCore/qstring.h:795: warning: type qualifiers ignored on function return type
> /usr/include/qt4/QtCore/qstring.h:796: warning: type qualifiers ignored on function return type
> /build/tbm/qgis-0.8.1/src/core/qgslogger.cpp: In static member function 'static int QgsLogger::debugLevel()':
> /build/tbm/qgis-0.8.1/src/core/qgslogger.cpp:137: error: 'getenv' was not declared in this scope
> /build/tbm/qgis-0.8.1/src/core/qgslogger.cpp:146: error: 'atoi' was not declared in this scope
> /build/tbm/qgis-0.8.1/src/core/qgslogger.cpp: In static member function 'static const char* QgsLogger::debugFile()':
> /build/tbm/qgis-0.8.1/src/core/qgslogger.cpp:158: error: 'getenv' was not declared in this scope
> make[3]: *** [src/core/CMakeFiles/qgis_core.dir/qgslogger.o] Error 1
> make[3]: Leaving directory `/build/tbm/qgis-0.8.1'
> make[2]: *** [src/core/CMakeFiles/qgis_core.dir/all] Error 2

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





More information about the Pkg-grass-devel mailing list