[distcc] forcing distcc to not use localhost

Fergus Henderson fergus at google.com
Mon Apr 20 07:17:17 GMT 2009


The clue is the message "compiler apparently called not for compile".

Distcc only distributes compilation, not linking.
If you invoke gcc in a mode that will do both compilation and linking,
distcc won't try to distribute that invocation

Try "distcc gcc -c foo.c" rather than "distcc gcc foo.c".

Cheers, Fergus.
-- 
Fergus Henderson <fergus at google.com>

On Apr 19, 2009 10:08 AM, "Kevin Haddock" <kevinhaddock at yahoo.com> wrote:


distcc-config --get-hosts

returns two hosts:
@host1.domain.com,cpp,izo  @host2.domain.com,cpp,izo

my .bash_profile looks like:

eval `ssh-agent`

keychain ~/.ssh/id_dsa
. ~/.keychain/$HOSTNAME-sh

export DISTCC_VERBOSE=1
export PATH="/usr/lib/ccache/bin:/usr/lib/distcc/bin:${PATH}"

----------------

I can log into both hosts with ssh without having it prompt for a password
nor passphrase.

I have the "hello world" program in foo.c.  I do:

$ distcc gcc foo.c

and this is what I get:

distcc[402] (dcc_trace_version) distcc 3.0 i686-pc-linux-gnu; built Apr 12
2009 23:48:21
distcc[402] (dcc_recursion_safeguard) safeguard level=0
distcc[402] (main) compiler name is "distcc"
distcc[402] (dcc_scan_args) scanning arguments: gcc foo.c
distcc[402] (dcc_scan_args) found input file "foo.c"
distcc[402] (dcc_scan_args) compiler apparently called not for compile
distcc[402] (dcc_lock_host) got cpu lock on localhost slot 0 as fd3
distcc[402] exec on localhost: gcc foo.c
distcc[402] (dcc_note_state) note state 5, file "foo.c", host "localhost"
distcc[402] (dcc_spawn_child) forking to execute: gcc foo.c
distcc[404] (dcc_increment_safeguard) setting safeguard: _DISTCC_SAFEGUARD=1
distcc[404] (dcc_trace_version) distcc 3.0 i686-pc-linux-gnu; built Apr 12
2009 23:48:21
distcc[404] (dcc_recursion_safeguard) safeguard: 1
distcc[404] (dcc_recursion_safeguard) safeguard level=1
distcc[404] (main) compiler name is "gcc"
distcc[404] (dcc_set_path) setting
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/bin:/usr/i686-pc-linux-gnu/gcc-bin/4.1.2:/usr/qt/3/bin
distcc[404] exec on localhost: gcc foo.c
distcc[404] (dcc_note_state) note state 5, file "(NULL)", host "localhost"
distcc[404] (dcc_spawn_child) forking to execute: gcc foo.c
distcc[405] (dcc_increment_safeguard) setting safeguard: _DISTCC_SAFEGUARD=2
distcc[404] (dcc_spawn_child) child started as pid405
distcc[402] (dcc_spawn_child) child started as pid404
distcc[404] (dcc_collect_child) cc child 405 terminated with status 0
distcc[404] (dcc_collect_child) cc times: user 0.000000s, system 0.000000s,
0 minflt, 0 majflt
distcc[404] compile (null) on localhost completed ok
distcc[404] elapsed compilation time 1.176626s
distcc[404] (dcc_exit) exit: code 0; self: 0.000000 user 0.010000 sys;
children: 0.260000 user 0.110000 sys
distcc[404] (dcc_cleanup_tempfiles_inner) deleted 0 temporary files
distcc[402] (dcc_collect_child) cc child 404 terminated with status 0
distcc[402] (dcc_collect_child) cc times: user 0.000000s, system 0.000000s,
0 minflt, 0 majflt
distcc[402] compile foo.c on localhost completed ok
distcc[402] (dcc_unlock) release lock fd3
distcc[402] elapsed compilation time 1.185987s
distcc[402] (dcc_exit) exit: code 0; self: 0.000000 user 0.000000 sys;
children: 0.260000 user 0.120000 sys
distcc[402] (dcc_cleanup_tempfiles_inner) deleted 0 temporary files

Why didn't this compile on one of the other hosts rather than localhost,
considering it was not even in the --get-hosts list?


-Kevin

-----

Enron staff were given note pads with inspiring quotes, such as this by
Martin Luther King Jr:

"Our lives begin to end the day we become silent about things that matter'"

-----

"One World, One Web, One Program" -- Microsoft Promotional Ad
"Ein Volk, Ein Reich, Ein Fuehrer" -- Adolf Hitler

-----

Up next: Huge fruitcake tossing contraptions come under attack by vicious
protesters.  "We love the fruitcake" one exclaims!



__
distcc mailing list            http://distcc.samba.org/
To unsubscribe or change options:
https://lists.samba.org/mailman/listinfo/distcc
-------------- next part --------------
HTML attachment scrubbed and removed


More information about the distcc mailing list