[Debichem-devel] Bug#462696: FTBFS with GCC 4.3: missing #includes

Martin Michlmayr tbm at cyrius.com
Sat Jan 26 23:10:56 UTC 2008

Package: libghemical
Version: 2.96-1
Severity: important
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

You can reproduce this problem with gcc-4.3 or gcc-snapshot from

libghemical_2.96-1 build log:

>  g++ -DHAVE_CONFIG_H -I. -I. -I. -I. -I../src -I/usr/include/sc -I/usr/include/sc -g -Wall -O2 -c atom.cpp  -fPIC -DPIC -o .libs/atom.o
> atom.cpp:17: warning: deprecated conversion from string constant to 'char*'
> atom.cpp: In constructor 'element::element(char*)':
> atom.cpp:165: error: 'strcmp' was not declared in this scope
> atom.cpp: In copy constructor 'atom::atom(const atom&)':
> atom.cpp:314: error: 'strcpy' was not declared in this scope
> make[2]: *** [atom.lo] Error 1
> make[2]: Leaving directory `/build/tbm/libghemical-2.96/src'

Trying to build ghemical_2.95-2:

> Automatic build of ghemical_2.95-2 on em64t by sbuild/amd64 0.53
> make[4]: Entering directory `/build/tbm/ghemical-2.95/src'
> if x86_64-linux-gnu-g++ -DHAVE_CONFIG_H -I. -I. -I.   -pthread -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include   -DPNG_NO_MMX_CODE -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/freetype2 -I/usr/include/libpng12   -DPNG_NO_MMX_CODE -I/usr/include/gtkglext-1.0 -I/usr/lib/gtkglext-1.0/include -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/cairo -I/usr/include/freetype2 -I/usr/include/libpng12 -I/usr/include/atk-1.0   -DPNG_NO_MMX_CODE -I/usr/include/libglade-2.0 -I/usr/include/gtk-2.0 -I/usr/include/libxml2 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/freetype2 -I/usr/include/libpng12   -I/usr/include/openbabel-2.0   -I/usr/include/ghemical -I/usr/include/sc   -I/usr/include/oglappth    -g -O2 -MT fileio.o -MD -MP -MF ".deps/fileio.Tpo" \
> 	  -c -o fileio.o `test -f 'fileio.cpp' || echo './'`fileio.cpp; \
> 	then mv -f ".deps/fileio.Tpo" ".deps/fileio.Po"; \
> 	else rm -f ".deps/fileio.Tpo"; exit 1; \
> 	fi
> In file included from project.h:37,
>                  from fileio.cpp:10:
> /usr/include/ghemical/moldyn.h: In constructor 'moldyn_param::moldyn_param(setup*)':
> /usr/include/ghemical/moldyn.h:91: error: 'strcpy' was not declared in this scope
> make[4]: *** [fileio.o] Error 1
> make[4]: Leaving directory `/build/tbm/ghemical-2.95/src'
> make[3]: *** [all-recursive] Error 1

Martin Michlmayr 

More information about the Debichem-devel mailing list