traffic problems with distcc3.1 on solaris10

View: New views
4 Messages — Rating Filter:   Alert me  

traffic problems with distcc3.1 on solaris10

by 朱晓靖 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hi everyone,
I have upgraded distcc2.18.3 to 3.1 today. it encounters error when I compile my application by distcc.
In my cases, there are two hosts, both are Solaris 10 and distcc3.1 and sunstudio12. I start up distccd daemon processes on both machines. It works fine when I use distcc2.18.3. but Doesn't work with distcc3.1, nothing else changes except distcc.
 
The client machine works fine, but the other host print error message. all tasks assigned to its is blocked.
The error message is as below:
distccd[1908]: ERROR: unexpected eof on fd6
distccd[1908]: ERROR: read failed while waiting for token "DOTI"
 
I try all methods but still can't find the causation.
I can't use Internet in the workplace and can't connect to work computer when I'm at home now. So the error message is not detail.
 
Any help would be greatly appreciated.  Thanks

--
All the best,
Yours Drew
The limits of my language are the limits of my world.

__
distcc mailing list            http://distcc.samba.org/
To unsubscribe or change options:
https://lists.samba.org/mailman/listinfo/distcc

Re: traffic problems with distcc3.1 on solaris10

by Fergus Henderson-4 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On Fri, Sep 18, 2009 at 7:12 AM, 朱晓靖 <renraxx@...> wrote:
Hi everyone,
I have upgraded distcc2.18.3 to 3.1 today. it encounters error when I compile my application by distcc.
In my cases, there are two hosts, both are Solaris 10 and distcc3.1 and sunstudio12. I start up distccd daemon processes on both machines. It works fine when I use distcc2.18.3. but Doesn't work with distcc3.1, nothing else changes except distcc.
 
The client machine works fine, but the other host print error message. all tasks assigned to its is blocked.
The error message is as below:
distccd[1908]: ERROR: unexpected eof on fd6
distccd[1908]: ERROR: read failed while waiting for token "DOTI"

Are you trying to use pump mode, or not?  If you're trying to use pump mode, then try without it, and vice versa.
How are your DISTCC_HOSTS and/or DISTCC_POTENTIAL_HOSTS environment variables set up?
 
I try all methods but still can't find the causation.
I can't use Internet in the workplace and can't connect to work computer when I'm at home now. So the error message is not detail.

The exact error messages would help a lot in debugging this.
Try sneaking them out of your workplace on a USB key or (if you still have one) a floppy drive :)
 
Cheers,
  Fergus.

--
Fergus Henderson <fergus@...>

__
distcc mailing list            http://distcc.samba.org/
To unsubscribe or change options:
https://lists.samba.org/mailman/listinfo/distcc

Re: traffic problems with distcc3.1 on solaris10

by 朱晓靖 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hello, Fergus Henderson and everyone,
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.
 
by the way, when I use pump gmake -j20, it says"Preprocessing locally. Include server not covering: Couldn't determine default system include directories", 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?
 
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,
        int delta = strlen(discrepancy_suffix) -
            strlen(include_server_port_suffix);
        ....
        int slash_pos = strlen(include_server_port)
                        - strlen(include_server_port_suffix);
        /* Because include_server_port_suffix is a suffix of include_server_port
         * we expect to find a '/' at slash_pos in filename. */
        assert((*filename)[slash_pos] == '/');
        (void) strcpy(*filename + slash_pos, discrepancy_suffix);
        return 0;
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. When I rewrite the code as:
       int delta = 0;
       int slash_pos =0;

       delta = strlen(discrepancy_suffix) -
            strlen(include_server_port_suffix);
        ....
        slash_pos = strlen(include_server_port)
                        - strlen(include_server_port_suffix);
        /* Because include_server_port_suffix is a suffix of include_server_port
         * we expect to find a '/' at slash_pos in filename. */
        assert((*filename)[slash_pos] == '/');
        (void) strcpy(*filename + slash_pos, discrepancy_suffix);
        return 0;
And there are other errors about "struct stat"..... Does anyone know what should I do? modify the code to fit the Forte 6 syntax or anything else? 
 
Sorry to trouble again.

--
All the best,
Yours Drew
The limits of my language are the limits of my world.

__
distcc mailing list            http://distcc.samba.org/
To unsubscribe or change options:
https://lists.samba.org/mailman/listinfo/distcc

Re: traffic problems with distcc3.1 on solaris10

by Fergus Henderson-5 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On Sun, Sep 20, 2009 at 12:02 AM, 朱晓靖 <renraxx@...> wrote:
Hello, Fergus Henderson and everyone,
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.
 
by the way, when I use pump gmake -j20, it says"Preprocessing locally. Include server not covering: Couldn't determine default system include directories",

What are the next few lines of the error message?
 
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?

Are you using gcc?

If not, it may require editing include_server/compiler_defaults.py in the distcc sources to support your compiler.
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.
 
 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,
        int delta = strlen(discrepancy_suffix) -
            strlen(include_server_port_suffix);
        ....
        int slash_pos = strlen(include_server_port)
                        - strlen(include_server_port_suffix);
        /* Because include_server_port_suffix is a suffix of include_server_port
         * we expect to find a '/' at slash_pos in filename. */
        assert((*filename)[slash_pos] == '/');
        (void) strcpy(*filename + slash_pos, discrepancy_suffix);
        return 0;
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.

Yes... clearly your compiler doesn't support C99, and it looks like some C99 syntax has crept in to the distcc sources.

Some possible alternatives:
  - make sure that you are invoking your compiler with the right flags to enable C99 features, if it supports C99
  - upgrade to a more recent version of your compiler that supports C99, if available
  - use gcc
  - port distcc to work with your compiler

Feel free to send patches to make distcc compile with your compiler.

--
Fergus Henderson <fergus.henderson@...>

__
distcc mailing list            http://distcc.samba.org/
To unsubscribe or change options:
https://lists.samba.org/mailman/listinfo/distcc