Hi, On Sunday 23 March 2008, Syd&Sandy wrote: > On Sat, 22 Mar 2008 17:02:58 -0700 > > Syd&Sandy <[EMAIL PROTECTED]> wrote: > > Thanks guys ... > > It appears that the strutils.cxx hasn't been modified in a while , but > > there was an update to gcc, so I'm wiping out and reinstalling Arch from > > scratch (wanted to change my partitions anyway ), Cheers > > > > Or maybe its time to experiment with a new distro ... any suggestions ? The GCC update you report was probably to a 4.3 version. In this version the headers which get installed are leaner than in previous releases. This means programmers have to explicitly include a header which is specified to contain a particular declaration/definition etc... under more circumstances than previously. This is not a GCC bug, rather the latitude provided by the C++ specification is exploited to speed up compilation of programs (lesser implicitly included features means lesser work for the compiler).
So as far as I can see, Csaba Halász is correct in suggesting that include directives are missing in the Simgear/Flightgear sources. >From your older Message: > did a system update this morning , a cvs update on FG and SG , and plib , > and get these errors trying to compile simgear .... The following is a list of source files and the headers which have to be included additionally in that source file because the file uses functions like strlen, atoi, memcmp... declared in one of the headers: Simgear: simgear/io/sg_file.cxx - <string.h> simgear/io/sg_serial.cxx - <stdlib.h> <string.h> simgear/misc/strutils.cxx - <string.h> simgear/misc/tabbed_values.cxx - <stdlib.h> simgear/screen/RenderTexture.cpp - <string.h> simgear/screen/shader.cpp - <stdlib.h> <string.h> simgear/screen/TestRenderTexture.cpp - <stdlib.h> Flightgear: src/Airports/dynamicloader.cxx - <stdlib.h> src/Airports/runwayprefloader.cxx - <stdlib.h> <string.h> src/Airports/runways.cxx - <stdlib.h> src/FDM/JSBSim/input_output/FGfdmSocket.cpp - <string.h> src/FDM/YASim/yasim-test.cpp - <stdlib.h> <string.h> src/Main/util.cxx - <stdlib.h> There is also one change to the Simgear CVS sources necessary which is not related to missing include directives. Namely, in file simgear/structure/SGExpression.cpp at line 51 the keyword "static" has to be removed. Here, a function template is explicitly specialized. Specifying an explicit specialization as "static" is not allowed by C++. For reference, here is a short explanation of the issue: http://www.open-std.org/jtc1/sc22/wg21/docs/cwg_defects.html#69 I hope that helps. With best Regards, Volker Lukas ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ Flightgear-devel mailing list Flightgear-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/flightgear-devel