[distcc] problem in pump mode ...
fergus at google.com
Fri Jul 25 20:00:07 GMT 2008
On Fri, Jul 25, 2008 at 1:19 PM, Roberto Alejandro Espi Muñoz <
raespi at estudiantes.uci.cu> wrote:
> Hi ... I'm trying to enable pump mode compiling using the new version of
> distcc. I declared my DISTCC_HOSTS with the ",cpp,lzo" trailing, and have
> multiple servers listening to my client.
> When I try to compile using pump mode:
> # pump make -j40 CXX=distcc
> I get these warnings and all my files fallback to my local pc
> WARNING include server: Preprocessing locally. Include server not covering:
> Bailing out because include server spent more than 3.8s user time handling
> request for translation unit 'xxxxxxxx.cpp'
> distcc Warning: include server gave up analyzing
> distcc (dcc_build_somewhere) Warning: failed to get includes from
> include server, preprocessing locally
Note that only preprocessing falls back to your local pc; compilation is
still done remotely.
So this is like non-pump mode (but a few seconds slower...).
If this is only happening for a few of your source files, then it's likely
not worth worrying about.
If it's happening for many or all of your files, then the problem is more
This problem arises when source files contain preprocessing constructs that
the include server has difficulty processing.
The algorithm used by the include server to compute which header files are
needed is unfortunately exponential time in the worst case, so we cut it off
after a certain point and give up and fall back to local preprocessing.
We've seen it arise in some of the header files in the Boost C++ library,
where they do Peano arithmetic in the preprocessor.
Can anybody help me enable this compile mode??
You could set the INCLUDE_SERVER_ARGS environment variable to "-d3" (or
"-d7", "-d15", or "-d31" for increased verbosity); the "pump" script will
pass this to the include server.
The output with that set might give more clues about which header files are
Fergus Henderson <fergus at google.com>
-------------- next part --------------
HTML attachment scrubbed and removed
More information about the distcc