[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