[Ecls-list] Build of ECL breaks for parallel builds.
Dr. David Kirkby
david.kirkby at onetel.net
Fri Jun 18 16:12:50 UTC 2010
If one attempts to build ECL 10.4.1 (latest available stable release) in
parallel, so the build goes wrong
Here it is on a Sun Ultra 27 with a quad core hyper-threaded (8 threads) Xeon
processor. I've set 12 threads running, using 'make -j 12'.
This is on OpenSolaris, but it's clearly been experienced with other operating
systems before, as the installation file in Sage (spkg-install), specifically
disables parallel builds
I get a similar failure with only 2 threads.
http://trac.sagemath.org/sage_trac/ticket/9187
is a patch for Sage which sets
MAKEFLAGS=
export MAKEFLAGS
as the current method of disabling parallel builds in Sage is not working.
Of course, the simple answer is to just accept this and disable parallel builds.
In the short term, this seems most logical. But in the longer term, it would be
nice if the issue could be resolved, as ECL is one of the packages in Sage which
takes a significant time to build. It is along with ATLAS and Maxima take quite
some time to build.
(As a note to Sage developers, we should really take a look at what packages
take a long time to build, and see if they can be speeded up by building in
parallel. Simply setting "$MAKE=make" to disable parallel builds is a hack)
Dave
Libraries have been installed in:
/export/home/drkirkby/sage-4.4.4.alpha1/spkg/standard/ecl-10.4.1/src/build
If you ever happen to want to link against installed libraries
in a given directory, LIBDIR, you must either use libtool, and
specify the full pathname of the library, or use the `-LLIBDIR'
flag during linking and do at least one of the following:
- add LIBDIR to the `LD_LIBRARY_PATH' environment variable
during execution
- use the `-RLIBDIR' linker flag
See any operating system documentation about shared libraries for
more information, such as the ld(1) and ld.so(8) manual pages.
----------------------------------------------------------------------
/usr/bin/ginstall -c -m 644
'/export/home/drkirkby/sage-4.4.4.alpha1/spkg/standard/ecl-10.4.1/src/src/gc/doc/porting.html'
'/export/home/drkirkby/sage-4.4.4.alpha1/spkg/standard/ecl-10.4.1/src/build/share/gc/porting.html'
make[4]: Leaving directory
`/export/home/drkirkby/sage-4.4.4.alpha1/spkg/standard/ecl-10.4.1/src/build/gc'
make[3]: Leaving directory
`/export/home/drkirkby/sage-4.4.4.alpha1/spkg/standard/ecl-10.4.1/src/build/gc'
make[2]: Leaving directory
`/export/home/drkirkby/sage-4.4.4.alpha1/spkg/standard/ecl-10.4.1/src/build/gc'
cd c; make
make[2]: Entering directory
`/export/home/drkirkby/sage-4.4.4.alpha1/spkg/standard/ecl-10.4.1/src/build/c'
cat
/export/home/drkirkby/sage-4.4.4.alpha1/spkg/standard/ecl-10.4.1/src/src/c/symbols_list.h
| \
sed -e 's%{\([A-Z ]*.*".*"\),[^,]*,[ ]*NULL,.*}%{\1,NULL}%g' \
-e 's%{\([A-Z ]*.*".*"\),[^,]*,[ ]*\([^,]*\),.*}%{\1,"\2"}%g' \
-e 's%{NULL.*%{NULL,NULL}};%' >
/export/home/drkirkby/sage-4.4.4.alpha1/spkg/standard/ecl-10.4.1/src/src/c/symbols_list2.h
if test -f ../CROSS-DPP ; then ../CROSS-DPP
/export/home/drkirkby/sage-4.4.4.alpha1/spkg/standard/ecl-10.4.1/src/src/c/main.d tmp.c
; else ./dpp
/export/home/drkirkby/sage-4.4.4.alpha1/spkg/standard/ecl-10.4.1/src/src/c/main.d tmp.c
; fi
if test -f ../CROSS-DPP ; then ../CROSS-DPP
/export/home/drkirkby/sage-4.4.4.alpha1/spkg/standard/ecl-10.4.1/src/src/c/symbol.d
tmp.c ; else ./dpp
/export/home/drkirkby/sage-4.4.4.alpha1/spkg/standard/ecl-10.4.1/src/src/c/symbol.d
tmp.c ; fi
if test -f ../CROSS-DPP ; then ../CROSS-DPP
/export/home/drkirkby/sage-4.4.4.alpha1/spkg/standard/ecl-10.4.1/src/src/c/package.d
tmp.c ; else ./dpp
/export/home/drkirkby/sage-4.4.4.alpha1/spkg/standard/ecl-10.4.1/src/src/c/package.d
tmp.c ; fi
if test -f ../CROSS-DPP ; then ../CROSS-DPP
/export/home/drkirkby/sage-4.4.4.alpha1/spkg/standard/ecl-10.4.1/src/src/c/list.d tmp.c
; else ./dpp
/export/home/drkirkby/sage-4.4.4.alpha1/spkg/standard/ecl-10.4.1/src/src/c/list.d tmp.c
; fi
if test -f ../CROSS-DPP ; then ../CROSS-DPP
/export/home/drkirkby/sage-4.4.4.alpha1/spkg/standard/ecl-10.4.1/src/src/c/apply.d
apply.c ; else ./dpp
/export/home/drkirkby/sage-4.4.4.alpha1/spkg/standard/ecl-10.4.1/src/src/c/apply.d
apply.c ; fi
if test -f ../CROSS-DPP ; then ../CROSS-DPP
/export/home/drkirkby/sage-4.4.4.alpha1/spkg/standard/ecl-10.4.1/src/src/c/eval.d tmp.c
; else ./dpp
/export/home/drkirkby/sage-4.4.4.alpha1/spkg/standard/ecl-10.4.1/src/src/c/eval.d tmp.c
; fi
/bin/sh: line 1: ./dpp: not found
/bin/sh: line 1: ./dpp: not found
/bin/sh: line 1: ./dpp: not found
/bin/sh: line 1: ./dpp: not found
make[2]: *** [package.o] Error 127/bin/sh: line 1: ./dpp: not found
make[2]: *** Waiting for unfinished jobs....
make[2]: *** [symbol.o] Error 127
make[2]: *** [main.o] Error 127
make[2]: *** [apply.c] Error 127
make[2]: *** [list.o] Error 127
/bin/sh: line 1: ./dpp: not found
make[2]: *** [eval.o] Error 127
make[2]: Leaving directory
`/export/home/drkirkby/sage-4.4.4.alpha1/spkg/standard/ecl-10.4.1/src/build/c'
make[1]: *** [libeclmin.a] Error 2
make[1]: Leaving directory
`/export/home/drkirkby/sage-4.4.4.alpha1/spkg/standard/ecl-10.4.1/src/build'
make: *** [all] Error 2
More information about the ecl-devel
mailing list