[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Chicken-users] A fix for parallel build (gmake -j)
From: |
Vitaly Magerya |
Subject: |
[Chicken-users] A fix for parallel build (gmake -j) |
Date: |
Thu, 06 Oct 2011 15:37:08 +0300 |
User-agent: |
Thunderbird |
Hi, folks. When I try to run a parallel build of chicken 4.7.0 via:
gmake -j4 PLATFORM=bsd
... it eventually fails saying this:
> gcc -shared -Wl,-soname,libchicken.so \
> -o libchicken.so library.o eval.o data-structures.o ports.o files.o
> extras.o lolevel.o utils.o tcp.o srfi-1.o srfi-4.o srfi-13.o srfi-14.o
> srfi-18.o srfi-69.o posixunix.o irregex.o scheduler.o profiler.o stub.o
> expand.o chicken-syntax.o chicken-ffi-syntax.o runtime.o apply-hack.x86-64.o
> -lm -lpthread
> gcc -shared -Wl,-R"." -Wl,-L. chicken.import.o -o chicken.import.so \
> -lchicken \
> -lm -lpthread
> gcc -shared -Wl,-R"." -Wl,-L. lolevel.import.o -o lolevel.import.so \
> -lchicken \
> -lm -lpthread
> ./libchicken.so: file not recognized: File format not recognized
> gmake[1]: *** [chicken.import.so] Error 1
> gmake[1]: *** Waiting for unfinished jobs....
> ./libchicken.so: file not recognized: File format not recognized
> gmake[1]: *** [lolevel.import.so] Error 1
> ln -sf libchicken.so libchicken.so.6
> gmake[1]: Leaving directory `/usr/ports/opt/chicken/work/chicken-4.7.0'
> gmake: *** [all] Error 2
The problems seems to arise because some libraries are being built
before libchicken.so when "gmake -j" is used.
Anyway, here's a quick fix for this issue:
--- rules.make.orig 2011-10-06 14:50:00.000000000 +0300
+++ rules.make 2011-10-06 14:50:06.000000000 +0300
@@ -242,7 +242,7 @@
# import libraries and extensions
-%.so: %.o
+%.so: %.o $(PRIMARY_LIBCHICKEN)
$(LINKER) $(LINKER_OPTIONS) $(LINKER_LINK_SHARED_DLOADABLE_OPTIONS) $^
$(LINKER_OUTPUT_OPTION) $@ \
$(LINKER_LIBRARY_PREFIX)$(PROGRAM_PREFIX)chicken$(PROGRAM_SUFFIX)$(LINKER_LIBRARY_SUFFIX)
\
$(LIBRARIES)
(I'm not sure PRIMARY_LIBCHICKEN is the right thing to use here though).
So, if you folks think this is sensible, then please commit it.
- [Chicken-users] A fix for parallel build (gmake -j),
Vitaly Magerya <=
- Re: [Chicken-users] A fix for parallel build (gmake -j), Moritz Wilhelmy, 2011/10/06
- Re: [Chicken-users] A fix for parallel build (gmake -j), Mario Domenech Goulart, 2011/10/06
- Re: [Chicken-users] A fix for parallel build (gmake -j), Vitaly Magerya, 2011/10/06
- Re: [Chicken-users] A fix for parallel build (gmake -j), Vitaly Magerya, 2011/10/06
- Re: [Chicken-users] A fix for parallel build (gmake -j), Mario Domenech Goulart, 2011/10/06
- Re: [Chicken-users] A fix for parallel build (gmake -j), Alaric Snell-Pym, 2011/10/06
- Re: [Chicken-users] A fix for parallel build (gmake -j), Vitaly Magerya, 2011/10/08