[Debian-med-packaging] Bug#455177: FTBFS with GCC 4.3: missing #includes

Martin Michlmayr tbm at cyrius.com
Sun Dec 9 07:04:44 UTC 2007


Package: treeviewx
Version: 0.5.1-4
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 treeviewx_0.5.1-4 on em64t by sbuild/amd64 0.53
...
> if x86_64-linux-gnu-g++ -DPACKAGE_NAME=\"\" -DPACKAGE_TARNAME=\"\" -DPACKAGE_VERSION=\"\" -DPACKAGE_STRING=\"\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE=\"tv\" -DVERSION=\"0.5.1\" -DHAVE_LIBWX_GTK2U_SVG_2_6=1  -I. -I.     -g -O2 -Wno-deprecated -I/usr/lib/wx/include/gtk2-unicode-release-2.6 -I/usr/include/wx-2.6 -DGTK_NO_CHECK_CASTS -D__WXGTK__ -D_FILE_OFFSET_BITS=64 -D_LARGE_FILES -DNO_GCC_PRAGMA   -DUSE_WXWINDOWS -DUSE_SVG -MT charactersblock.o -MD -MP -MF ".deps/charactersblock.Tpo" -c -o charactersblock.o charactersblock.cpp; \
> 	then mv -f ".deps/charactersblock.Tpo" ".deps/charactersblock.Po"; else rm -f ".deps/charactersblock.Tpo"; exit 1; fi
> charactersblock.cpp: In member function 'char CharactersBlock::GetState(int, int, int)':
> charactersblock.cpp:1048: error: 'strlen' was not declared in this scope
> charactersblock.cpp: In member function 'int CharactersBlock::IsInSymbols(char)':
> charactersblock.cpp:1286: error: 'strlen' was not declared in this scope
> charactersblock.cpp: In member function 'virtual void CharactersBlock::HandleFormat(NexusToken&)':
> charactersblock.cpp:1900: error: 'strcpy' was not declared in this scope
> charactersblock.cpp: In member function 'int CharactersBlock::PositionInSymbols(char)':
> charactersblock.cpp:3029: error: 'strlen' was not declared in this scope
> charactersblock.cpp: In member function 'virtual void CharactersBlock::Report(std::ostream&)':
> charactersblock.cpp:3271: warning: deprecated conversion from string constant to 'char*'
> charactersblock.cpp: In member function 'void CharactersBlock::ResetSymbols()':
> charactersblock.cpp:3345: error: 'strcpy' was not declared in this scope
> charactersblock.cpp: In member function 'void CharactersBlock::WriteStates(DiscreteDatum&, char*, int)':
> charactersblock.cpp:3609: error: 'strlen' was not declared in this scope
> make[3]: *** [charactersblock.o] Error 1
> make[3]: Leaving directory `/build/tbm/treeviewx-0.5.1/ncl-2.0/src'

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





More information about the Debian-med-packaging mailing list