[mercury-users] Mercury compilation problem, Mac OS X

Julien Fischer juliensf at cs.mu.OZ.AU
Sat Jan 28 23:38:48 AEDT 2006




On Fri, 27 Jan 2006, Daniel Elenius wrote:

> Julien Fischer wrote:
> > On Thu, 26 Jan 2006, Daniel Elenius wrote:
> >
> >
> >> I'm trying to compile mercury-compiler on Mac OS X 10.4.4
> >>
> >> I get this error when i execute make (after running ./configure
> >> --with-cc=/usr/bin/gcc-3.3 --prefix=/opt/local/mercury):
> >>
> >> /usr/bin/gcc-3.3 -multiply_defined suppress
> >> -dynamiclib -single_module -install_name \
> >>
> >> /opt/local/mercury/lib/mercury/lib/powerpc-apple-darwin8.4.0/libgc.dylib \
> >>         -o libgc.dylib alloc.o reclaim.o allchblk.o misc.o mach_dep.o
> >> os_dep.o mark_rts.o headers.o mark.o obj_map.o blacklst.o finalize.o
> >> new_hblk.o dbg_mlc.o malloc.o stubborn.o checksums.o solaris_threads.o
> >> aix_irix_threads.o pthread_support.o pthread_stop_world.o
> >> darwin_stop_world.o typd_mlc.o ptr_chck.o mallocx.o solaris_pthreads.o
> >> gcj_mlc.o specific.o gc_dlopen.o backgraph.o win32_threads.o dyn_load.o -lc
> >> ld: Undefined symbols:
> >> _sprintf$LDBLStub
> >> /usr/bin/libtool: internal link edit command failed
> >> make[3]: *** [libgc.dylib] Error 1
> >> make[2]: *** [submake] Error 2
> >> make[1]: *** [boehm_gc] Error 2
> >>
> >>
> >
> > This looks to be a recent problem - it was working on earlier versions of 10.4
> > (and I've just tried it on 10.3.9 and all seems well).  I'd guess that what
> > has happened is the version of the Boehm GC we ship with mercury 0.12.X is no
> > longer compatible with recent versions MacOS 10.4 - I'll have a look into
> > this.
> >
> > In the meantime you may want to try using a recent rotd rather than the
> > 0.12 release since the former uses a more recent version of the Boehm
> > collector.
> >
> >
>
> Ok, that worked.
>
> However, when I subsequently do 'make install' it goes on forever. I let
> it run for about 6 hours before I interrupted it. Seems like it's in a
> loop it shouldn't be in...
>

By default make install will install the Mercury system in nine different
grades on MacOS X.  Compiling all of these (particularly some of the debugging
grads) can cause the install process to run for a very long time which is most
likely what you're seeing here.

You could try reducing the number of grades by giving the appropriate
option to the configure script (see configure --help for a list of options).

> Also, I was curious about this from the ./configure script:
>
> checking for jikes... /usr/bin/jikes
> checking for java... /usr/bin/java
> checking for jar... /usr/bin/jar
> checking if the above Java SDK works and is sufficiently recent... no
>
> Does this mean I won't be able to interface with Java to/from my Mercury
> programs?

These are used for building the java grade.  Compiling Mercury to Java
is broken at the moment anyway.  If you want to interface use Java with
Mercury at the moment the best way is probably to use Mercury's C interface
and go via JNI.

> Does it require Java 5.0?

No, that last time any significant work was done on the java backend there
was no such thing as Java 5.0.

Cheers,
Julien.
--------------------------------------------------------------------------
mercury-users mailing list
post:  mercury-users at cs.mu.oz.au
administrative address: owner-mercury-users at cs.mu.oz.au
unsubscribe: Address: mercury-users-request at cs.mu.oz.au Message: unsubscribe
subscribe:   Address: mercury-users-request at cs.mu.oz.au Message: subscribe
--------------------------------------------------------------------------



More information about the users mailing list