On Sun, Sep 20, 2009 at 12:02 AM, 朱晓靖 <span dir="ltr">&lt;<a href="mailto:renraxx@gmail.com">renraxx@gmail.com</a>&gt;</span> wrote:<br><div class="gmail_quote"><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div>Hello, Fergus Henderson and everyone,</div>
<div>I found something about the problem, when I use &quot;gmake -j20&quot; directly in the shell, distcc works perfectly. However the error happens when I integrate &quot;gmake -j20&quot; into my schedule script. I think I can resolve the problem on monday. Thanks very much for your help.</div>


<div> </div>
<div>by the way, when I use pump gmake -j20, it says&quot;<b>Preprocessing locally. Include server not covering: Couldn&#39;t determine default system include directories</b>&quot;,</div></blockquote><div><br>What are the next few lines of the error message?<br>
 </div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><div> I read the help, it tells &quot; To determine the default system header directories, the include server runs the compiler once for each language needed during its session&quot;, But I don&#39;t know what to do, is anyone kind to give a tip?</div>
</blockquote><div><br>Are you using gcc?<br><br>If not, it may require editing include_server/compiler_defaults.py in the distcc sources to support your compiler.<br>You would need to figure out (perhaps using your compiler&#39;s documentation) how to compute the search path that your compiler uses to find system header files.<br>
 <br></div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">


<div> And another problem, I try to compile distcc on solaris8 with forte 6. but many files failed to compile. for example src/compile.c file, at line 123,</div>
<div>        int delta = strlen(discrepancy_suffix) -<br>            strlen(include_server_port_suffix);<br>        ....<br>        <font color="#ff0000">int slash_pos = strlen(include_server_port)<br></font>                        - strlen(include_server_port_suffix);<br>

        /* Because include_server_port_suffix is a suffix of include_server_port<br>         * we expect to find a &#39;/&#39; at slash_pos in filename. */<br>        assert((*filename)[slash_pos] == &#39;/&#39;);<br>        (void) strcpy(*filename + slash_pos, discrepancy_suffix);<br>

        return 0;</div>
<div>compiler says there is a error before or after int. I&#39;m confused, I&#39;m a C++ developer and not familiar with special C compiler, I think it&#39;s a weak of Forte 6.</div></blockquote><div><br>Yes... clearly your compiler doesn&#39;t support C99, and it looks like some C99 syntax has crept in to the distcc sources.<br>
<br>Some possible alternatives:<br>  - make sure that you are invoking your compiler with the right flags to enable C99 features, if it supports C99<br>  - upgrade to a more recent version of your compiler that supports C99, if available<br>
  - use gcc<br>

  - port distcc to work with your compiler<br><br>Feel free to send patches to make distcc compile with your compiler. <br clear="all"></div></div><br>-- <br>Fergus Henderson &lt;<a href="mailto:fergus.henderson@gmail.com">fergus.henderson@gmail.com</a>&gt;<br>