On Sun, Sep 20, 2009 at 12:02 AM, 朱晓靖 <span dir="ltr"><<a href="mailto:renraxx@gmail.com">renraxx@gmail.com</a>></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 "gmake -j20" directly in the shell, distcc works perfectly. However the error happens when I integrate "gmake -j20" 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"<b>Preprocessing locally. Include server not covering: Couldn't determine default system include directories</b>",</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 " To determine the default system header directories, the include server runs the compiler once for each language needed during its session", But I don'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'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 '/' at slash_pos in filename. */<br> assert((*filename)[slash_pos] == '/');<br> (void) strcpy(*filename + slash_pos, discrepancy_suffix);<br>
return 0;</div>
<div>compiler says there is a error before or after int. I'm confused, I'm a C++ developer and not familiar with special C compiler, I think it's a weak of Forte 6.</div></blockquote><div><br>Yes... clearly your compiler doesn'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 <<a href="mailto:fergus.henderson@gmail.com">fergus.henderson@gmail.com</a>><br>