Hi Jerry,

> I am trying to build bigloo 4.2a for the Fedora Linux distribution.  I
> have hit a couple of problems.  First, the configure script doesn't
> know about the existence of Java 1.8.  The code that sets java_version
> defaults to 1.3 if it doesn't understand the version.  Versions 1.2
> and lower are not only extremely old, but can't even be used for many
> common libraries.  Wouldn't it be better to default to the highest
> supported version instead of 1.3?  That way, as new Java versions come
> out, bigloo can at least attempt to use the same support as for the
> previous version (which, admittedly, may not work ... but it might!).
> 
> For now, I have added a clause to make the presence of Java 1.8 set
> java_version to 1.7, but please let me know if that is going to cause
> problems.
All this makes sense. I have applied the same change and I took provision
for the version 1.9, too.

> The second problem is that the build fails on an x86_64 machine like this:
> 
> mkdir -p /builddir/build/BUILD/bigloo4.2a/lib/bigloo/4.2a/bmem
> (if [ "no" = "yes" ]; then \
>             libbigloogc=/usr/lib64/libbigloogc-4.2a.so.0; \
>           else \
>             libbigloogc=-lgc; \
>           fi; \
>          gcc -shared lib/init.o lib/alloc.o lib/gchook.o lib/list.o
> lib/symbol.o lib/trace.o lib/thread.o \
>                -L/builddir/build/BUILD/bigloo4.2a/lib/bigloo/4.2a
> -lbigloo_s-4.2a \
>                $libbigloo_gc \
>                -ldl -lunistring -lresolv -lgmp -lpcre -lgc -lm \
>                 \
>                -o
> /builddir/build/BUILD/bigloo4.2a/lib/bigloo/4.2a/bmem/bmem.so.0)
> /builddir/build/BUILD/bigloo4.2a/lib/bigloo/4.2a/libbigloo_s-4.2a.a(cstring.o):
> In function `string_to_bstring_len':
> /builddir/build/BUILD/bigloo4.2a/runtime/Clib/cstring.c:22: multiple
> definition of `string_to_bstring_len'
> lib/alloc.o:/builddir/build/BUILD/bigloo4.2a/bde/bmem/lib/alloc.c:754:
> first defined here
> /builddir/build/BUILD/bigloo4.2a/lib/bigloo/4.2a/libbigloo_s-4.2a.a(cstring.o):
> In function `string_to_bstring':
> /builddir/build/BUILD/bigloo4.2a/runtime/Clib/cstring.c:63: multiple
> definition of `string_to_bstring'
> lib/alloc.o:/builddir/build/BUILD/bigloo4.2a/bde/bmem/lib/alloc.c:755:
> first defined here
> 
> ... followed by many more multiple definition complaints.  Any advice
> you can give on resolving this problem would be much appreciated.
> Thank you,
The multiple definitions are expected as the purpose to the bmem.so is
to be preloaded (LD_PRELOAD)! This probably means that very case, the
explicit dependency -lbigloo_s4.2a should not be added when building
bmem.so. I will check if that works on my machine (debian now) and if it
does I will modify the Makefile accordingly.

-- 
Manuel

Reply via email to