<div dir="ltr"><div>Hi Sam,<br></div><div><br></div><div>1 - From my understanding, distcc is looking for its configuration from environment variables (for the current session) or for a config file located in $DISTCC_DIR/hosts directory - <a href="http://distcc.googlecode.com/svn/trunk/doc/web/man/distcc_1.html#TOC_15">http://distcc.googlecode.com/svn/trunk/doc/web/man/distcc_1.html#TOC_15</a></div><div><br></div><div>2 - I'm not sure how distcc handle configuration from files depending on distributions, you should also run "distcc-config" utility. More information about distcc configuration keys here : <a href="http://distcc.googlecode.com/svn/trunk/doc/web/man/distcc_1.html#TOC_22">http://distcc.googlecode.com/svn/trunk/doc/web/man/distcc_1.html#TOC_22</a><br></div><div><br></div><div>3 - I prefer to configure distcc using environment variable directly in a file and source it when needed. You should check if the session used to run rpmbuild also have distcc environment variables set.</div><div><br></div><div>Cheers,</div><div>Yassine</div><div><br></div><div><br></div></div><div class="gmail_extra"><br><div class="gmail_quote">2015-06-14 16:33 GMT+02:00 Sam Varshavchik <span dir="ltr"><<a href="mailto:mrsam@courier-mta.com" target="_blank">mrsam@courier-mta.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">I have /etc/distcc/hosts configured with 4 local builds, and 6 distibuted builds.<br>
<br>
When I run 'make -j 10' myself, the build gets correctly distributed. But something strange happens when I try to use rpmbuild.<br>
<br>
I have rpmbuild properly configured to run 'make -j 10'. And I see that ten distcc instances get started, but only for localhost builds appear to be running, and the remaining processes wait until a localhost slot becomes available, before spawning off g++.<br>
<br>
I strace-d the entire rpmbuild.<br>
<br>
What I see is that distcc never reads /etc/distcc/hosts, and just proceeds to run a local build.<br>
<br>
When I run 'make -j 10' myself, this is what I see the distcc process doing:<br>
<br>
17180 mkdir("/home/mrsam/.distcc", 0777 <unfinished …><br>
17180 <… mkdir resumed> )             = -1 EEXIST (File exists)<br>
17180 access("/home/mrsam/.distcc/hosts", R_OK) = -1 ENOENT (No such file or directory)<br>
17180 access("/etc/distcc/hosts", R_OK <unfinished …><br>
<br>
… and so on.<br>
<br>
When I strace an entire rpmbuild, the distcc process, instead, does this:<br>
<br>
10068 mkdir("/home/mrsam/.distcc", 0777 <unfinished …><br>
10068 <… mkdir resumed> )             = -1 EEXIST (File exists)<br>
10068 mkdir("/home/mrsam/.distcc/lock", 0777 <unfinished …><br>
10068 <… mkdir resumed> )             = -1 EEXIST (File exists)<br>
10068 open("/home/mrsam/.distcc/lock/cpu_localhost_0", O_WRONLY|O_CREAT, 0666 <unfinished …><br>
<br>
… and so on. What are the reasons distcc decides to skip checking /etc/distcc/hosts? grepping the entire strace, distcc never tries to read /etc/distcc/hosts.<br>
<br>
<br>__<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/mailman/listinfo/distcc</a><br></blockquote></div><br></div>