<div dir="ltr">Thanks,<div>Here's another way of describing my problem.</div><div><br></div><div>I have a configuration that allows me to substitute distcc for cc/cxx. This works fine, and I can distribute compilation across the 4 nodes available with circleCI, when I supply a -j N option to make.</div><div><br></div><div>However, it appears that the linking (ld) phase is carried out using a separate mechanism - i.e. not from distcc. Thus the requirement of only one job on the localhost is not respected by the link phase because distcc isn't executing the linker. In the circleCI system this leads to problems with memory.</div><div><br></div><div>I'd therefore like to be able to tell distcc to be parallel without telling the rest of the makefile also being parallel. Obviously this would require that there is some other mechanism (besides -j) - perhaps an environment variable - that triggers parallel behaviour in distcc.</div><div><br></div><div>In short - the cc part of distcc works fine. However, in this build system, ld is not being run from distcc. I don't want multiple ld jobs running, so I'd like to be able to run make -j1 but instruct distcc to use a higher level of j.</div><div><br></div><div><br></div><div><br></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Sep 6, 2016 at 6:42 PM, Łukasz Tasz <span dir="ltr"><<a href="mailto:lukasz@tasz.eu" target="_blank">lukasz@tasz.eu</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><div><div><div><div><div>Could you please describe more what you would like to achieve?<br></div>-j does net decide it compilation will be done with distcc or not, <br></div>-j must take into consideration how many distcc agent you have.<br><br></div>you have two dimensions, one is if distcc should be used, and second is about parallelism. <br></div><div>first dimension is controlled in build system, second can be controlled by build system, a but also may be limited by distcc. <br></div><div><br></div>localslots and localslots_cpp controls parallelism from distcc point of view.<br><br></div>regards<br></div>Lukasz<br></div><div class="gmail_extra"><br clear="all"><div><div data-smartmail="gmail_signature"><div dir="ltr"><div>Łukasz Tasz<br></div><div>RTKW<br></div></div></div></div>
<br><div class="gmail_quote"><div><div class="h5">2016-09-06 4:11 GMT+02:00 Richard Beare <span dir="ltr"><<a href="mailto:richard.beare@gmail.com" target="_blank">richard.beare@gmail.com</a>></span>:<br></div></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div class="h5"><div dir="ltr">Hi,<div>I'm having a few problems using distcc for a large project on the circleCI infrastructure, which has 4GB limits for the compilation hosts.</div><div><br></div><div>Occasionally I see this limit being exceeded when 2 link jobs run on the main server at the same time. This happens despite the --localslots=1 and localhost/1 settings in the distcc hosts file.</div><div><br></div><div>I suspect the problem is that the large and complex cmake project that is being built has its own link mechanism. So my question is whether there is an alternative way to pass the parallel option to distcc besides make -jN? This would allow the other compile steps that might not be under distcc control to run serially on the local host.</div><div><br></div><div>Thanks</div></div>
<br></div></div>__<br>
distcc mailing list            <a href="http://distcc.samba.org/" rel="noreferrer" target="_blank">http://distcc.samba.org/</a><br>
To unsubscribe or change options:<br>
<a href="https://lists.samba.org/mailman/listinfo/distcc" rel="noreferrer" target="_blank">https://lists.samba.org/mailma<wbr>n/listinfo/distcc</a><br></blockquote></div><br></div>
</blockquote></div><br></div>