GCC4.6
Revision 4 as of 2011-01-13 19:22:40
Clear message
Common issues with GCC-4.6 / G++-4.6
GCC-4.6 is again more strict, introduces new warnings, and lets packages fail to build, which did succeed to build with earlier GCC versions.
Warnings
Warning format
Every warning has the option which did produce the warning appended to the warnings, e.g.
FAILURE: warning diffs: 1c1 < #warning undefining SECOND due to option name conflict [-Wcpp] --- > #warning undefining SECOND due to option name conflict FAIL: cond.test
New warning -Wunused-but-set-variable
This triggers a lot:
uuid_gen_unix.c:62:20: error: variable 'tv' set but not used [-Werror=unused-but-set-variable]
Either fix it, or if the package is built with -Werror, add as a workaround: -Wno-error=unused-but-set-variable
C++
NULL not defined
../build/include/apt-pkg/weakptr.h:58:26: error: 'NULL' was not declared in this scope
Fix: #include <cstdlib> is missing.
ptrdiff_t does not name a type
/usr/include/sigc++-2.0/sigc++/signal.h:38:11: error: 'ptrdiff_t' does not name a type
Linker
-z syms unknown
ld.gold doesn't know about -z syms.
d-conf:
CCLD libdconfsettings.so gcc: error: unrecognized option '-avoid-version'