We have distcc working with QNX 6.3.0 - the QNX cross-compiler 'qcc'
is more-or-less identical to gcc.

The main complication with QNX is its recursive makefile structure:

In order to use distcc you must edit 
c:/QNX630/target/qnx6/usr/include/qconfig.mk in
which 'make' variables are set up to invoke the various target-dependent 
compiler
derivatives. For example:

CC_nto_x86_gcc_qcc = $(QNX_HOST)/usr/bin/qcc -V$(gcc_ver_string)gcc_ntox86 -c
AS_nto_x86_gcc_qcc = $(QNX_HOST)/usr/bin/qcc -V$(gcc_ver_string)gcc_ntox86 -c
LR_nto_x86_gcc_qcc = $(QNX_HOST)/usr/bin/qcc -V$(gcc_ver_string)gcc_ntox86 -r
LD_nto_x86_gcc_qcc = $(QNX_HOST)/usr/bin/qcc -V$(gcc_ver_string)gcc_ntox86
AR_nto_x86_gcc_qcc = $(AR_nto_x86_gcc)
UM_nto_x86_gcc_qcc = $(UM_nto_x86_gcc)
LDBOOTSTRAP_nto_x86_gcc_qcc = $(LDBOOTSTRAP_nto_x86_gcc)
LDBOOTSTRAPPOST_nto_x86_gcc_qcc = $(LDBOOTSTRAPPOST_nto_x86_gcc)

must become:

CC_nto_x86_gcc_qcc = distcc qcc -V$(gcc_ver_string)gcc_ntox86 -c
AS_nto_x86_gcc_qcc = distcc qcc -V$(gcc_ver_string)gcc_ntox86 -c
LR_nto_x86_gcc_qcc = distcc qcc -V$(gcc_ver_string)gcc_ntox86 -r
LD_nto_x86_gcc_qcc = distcc qcc -V$(gcc_ver_string)gcc_ntox86
AR_nto_x86_gcc_qcc = $(AR_nto_x86_gcc)
UM_nto_x86_gcc_qcc = $(UM_nto_x86_gcc)
LDBOOTSTRAP_nto_x86_gcc_qcc = $(LDBOOTSTRAP_nto_x86_gcc)
LDBOOTSTRAPPOST_nto_x86_gcc_qcc = $(LDBOOTSTRAPPOST_nto_x86_gcc)

Then ensure that the PATH environment variable has 
c:/QNX630/host/win32/x86/usr/bin
early in its list. (N.B. QNX_HOST is set to c:/QNX630/host/win32/x86 on our
QNX distribution)

This works both from Momentics and a bash shell

In order to gain control of the 'make' -j option which QNX normally defaults to 
1,
try 'make JLEVEL=2 CPULIST=<your target> ....' or add an equivalent build 
target to
Momentics.

Choosing '-j N' or JLEVEL=N where N is greater than the number of volunteer
hosts, we have found that distcc will occasionally cough out error message:

'cc: mkdir: cannot create temporary working directory'
'distcc[2024] ERROR: compile c:/tom/dick/harry.cpp failed'

Other than that, it seems to work as advertised. One is impressed.

Steven Whittard-Swift, EADS DS UK Ltd.






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

Reply via email to