On 2 Oct 2002, Terry Griffin <[EMAIL PROTECTED]> wrote: > > Building distcc using distcc works OK for me. What version of gcc are > > you using? > > For building distcc I was using Red Hat's gcc 2.96 (not an official > GNU release). For the clients project it's gcc 3.0.4.
I wonder if Red Hat did something wierd to their version to make it behave differently to both earlier and later GNU versions? At the moment I can't what can be done to make it work. If you want to use that (buggy?) compiler, you will need to leave off -MD. If what you're saying is correct, then we can't know what will go into the -o output file when one of the -MD options is used. We can't just remove the -MD option from the preprocessor invocation, because that needs to happen as part of preprocessing to have the right side effect. We also can't just leave off the -E, because then the compiler will run locally. > I'm assuming it would have been an object file instead of preprocessed > output, but -E suppressed object output so it doesn't really matter. It's not really accurate to say -E suppresses object output. What it actually does is suppress running the compiler. So -o with -E always specifies the preprocessor output. > >> Since -o is meant for the object file when -MM or -MMD are used, > >> preprocessed output is sent to stdout. > > > > Why do you say that? > > Again, because I tried it and that's what happened. The gcc documentation > says that -MM and -MMD don't inhibit compilation, so object code must > go one place and preprocessed output must go elsewhere. From that I > infered that -o is reserved for the object code in this scenario. -MD and -MMD just cause side effects of running the preprocessor. The preprocessed output gets fed into the compiler; it doesn't have to go anywhere else. -- Martin _______________________________________________ distcc mailing list [EMAIL PROTECTED] http://lists.samba.org/cgi-bin/mailman/listinfo/distcc
