Re: [Fresco-devel] Fresco CVS build problems
Stefan Seefeld <[email protected]> Tue, 25 Mar 2003 20:34:25 -0500
| Newsgroups | gmane.comp.video.fresco.devel |
|---|---|
| Message-ID | <[email protected]> |
Iain Nicholson wrote: > In all of these files except GraphDebugger.cc, I had to change #include > <streambuf> to #include <streambuf.h> and in GraphDebugger.cc I had to > change #include <limits> to #include <limits.h> > > Was this the correct thing to do, or is there a different convention for > header files in C++ compared to C? it's not a different convention for header files, it's a different set of header files. <streambuf.h> is an obsolete header, <streambuf> is what the C++ standard mandates (you have to upgrade your gcc to 3.2 or greater). > > Subsequent compilation fails with the following error: > > compiling GraphDebugger.o > ../../../Fresco/Berlin/src/GraphDebugger.cc: In method `struct > Berlin::GraphDebugger::graphic_info & > Berlin::GraphDebugger::find_or_insert(Fresco::_objref_Graphic *)': > ../../../Fresco/Berlin/src/GraphDebugger.cc:171: `::numeric_limits' > undeclared (first use here) > ../../../Fresco/Berlin/src/GraphDebugger.cc:171: parse error before `int' > make[2]: *** [GraphDebugger.o] Error 1 that's because you replaced <limit> by <limit.h>. The latter is a C header, which is available as <climit> (and the symbols are then part of the 'std' namespace. <limit> is really a different beast, which is, as it seems, needed for the 'numeric_limits' template. Hope this helps, Stefan