On 4/7/06, Moinak Ghosh <Moinak.Ghosh at sun.com> wrote: > There are three things that you seem to imply here: 1) Compiling just the > changed files as opposed to compiling all the source files; 2) Compiling > parts of changed files as opposed to compiling all the files; 3) Pre- > compiled headers. > > As for #1, it is the normal behavior even on *NIX systems if you have the > Makefiles set up properly. Make takes care of tracking file modifications > and invokes gcc for only the changed files. > > As for #2, I am not sure whether Tc or MVC does this, but maybe this is > done at the function level. > > #3 is supported by gcc with the appropriate options.
i was referring to #2. compiling parts of changed files, not the whole file. > > Technically the term conditional compilation applies to preprocessor > directives that control which source lines are processed by the > compiler. using #ifdef, #define and so on.. yes, im aware of that. i think i might have got the terms mixed up a bit... cant remember the exact term right now, will mail back later. > Yeah C++ compilation is always slower due to overheads. Have you tried > adding extern "C" for you hello world program to force C linkage and > disable the C++ poly-mangled-virtual-inherited-temporarily-constructed- > referential overheads ? I dunno whether this will help though. :-P not just compiling but execution speed ( as per wall clock) is also slower. most of the overheads were disabled using the cmd line options to g++... Ananth