Re: [eclipse-clp-users] ECLiPSe on Mountain Lion (OS X 10.8)

From: David Dreisigmeyer <dwdreisigmeyer_at_gmail.com>
Date: Mon, 8 Oct 2012 14:31:37 -0400
This seems to work for x86_64_macosx:

if [ -z $GCCLIBDIR ]; then
GCCLIBDIR="."
fi

I get many errors along the lines of:

Eplex error: Could not find any of the solver interfaces:
[ list, of, things, that, were, not, found ]

How can I avoid these?

Also, what third-party packages are needed by ECLiPSe?  I know OS X 10.8
has gmp and tcl 8.5.* on it aso I'd need to sym link those.  Beyond that
what else would be needed?  Is there anything else that should be done
beyond the third-party libraries?

This is probably covered in the manual but I'm finding that a bit hard to
follow.

Thanks,

-Dave



On Sun, Oct 7, 2012 at 10:26 PM, Kish Shen <kisshen_at_cisco.com> wrote:

> Hi David,
>
> Thanks for the info. I think I know where the problem is: the -L is
> defined as -L$GCCLIBDIR, i.e. it should be filled with the value of
> GCCLIBDIR, which must be empty in your case.
>
> GCCLIBDIR is set in a rather complex way, and I assume this is not working
> correctly on 10.8. You can find the script that does this in configure, in
> the line:
>
> GCCLIBDIR=$(ls -d /usr/lib/gcc/i686*/$GCC_**VERSION/x86_64 2>/dev/null)
>
> (this is in code following the x86_64_macox) case)
>
> this is intended to set  GCCLIBDIR to the path where the GCC/G++ libraries
> are. I am actually not sure if this is needed these days, even for 10.6.
> GCCLIBDIR was needed for earlier versions of Mac OS X, as it seemed that
> the linker was not able to automatically find the standard C++ library,
> i.e. the path to the library must be specified with a -L, which is what the
> above was supposed to do.
>
> I am not sure it is needed any longer -- Mac OS X have become more
> compatible with other Un*x, I suspect it might not even be needed for 10.6
> (which is what I have), but as it is not doing any harm, I left it in so
> that you can compile ECLiPSe with older versions of Mac OS X.
>
> So my guess is that the gcc libs are no longer in the place that the test
> expects them to be, i.e.
>
> /usr/lib/gcc/i686*/$GCC_**VERSION/x86_64
>
> (where * was something that changed with different versions of Mac OS X)
>
> does such a directory exist on your system? If not, do you know where the
> directory might be?
>
> Also, GCCLIBDIR is supposed to be set to . (so that you get -L.) if
> something goes wrong -- I think this is what the
>
> if test $? -ne 0; then
>
> is supposed to do. I guess not finding the directory with ls is not
> considered an error, so I probably need to change/fix that.
>
> Anyway, you could try getting rid of the -L$GCCLIBDIR in configure --
>
> just delete it from the setting of DYNLDFLAGS and LDYLD (i.e in the lines
> DYNLDFLAGS=... and LDYLD=...)
>
> I would be interested to know if this works..
>
> Cheers,
>
> Kish
>
>
> On 08/10/2012 01:30, David Dreisigmeyer wrote:
>
>> Thanks Kish.
>>
>> I'm really only concerned with getting it to compile currently, not the
>> 3rd
>> party features - I'll try to deal with those later.
>>
>> The 6.0#183 binary on SourceForge does work on OS X 10.8.
>>
>> Here's the compiling output that includes references to libeclipse.dylib:
>>
>> ------------------------------**----------
>> gcc -dynamiclib -single_module -flat_namespace -search_paths_first -m64
>> -mmacosx-version-min=10.4 -L  -o libeclipse.dylib \
>> dict.o read.o lex.o emu.o proc_desc.o bip_tconv.o io.o write.o bip_comp.o
>> mem.o operator.o bip_record.o bip_bag.o bip_heapevents.o bip_shelf.o
>> bip_store.o bip_array.o bip_strings.o bip_db.o property.o bip_io.o
>> procedure.o handle.o intervals.o bip_arith.o bigrat.o bip_module.o
>> bip_control.o bip_delay.o bip_domain.o bip_misc.o elipsys_fd.o bip_load.o
>> code.o init.o emu_c_env.o emu_util.o error.o external.o gc_stacks.o
>> handlers.o printam.o addrmap.o eclipsedir.o embed.o os_support.o lib1.o
>> lib2.o lib3.o lib4.o lib5.o lib6.o lib7.o dummy_mps.o dummy_par.o
>> dummy_upcalls.o dummy_wm.o whereami_default.o \
>> -L../../lib/x86_64_macosx -L../..//sys_lib/x86_64_macosx \
>> -lshm -L.  -lgmp -ldl -lm
>> i686-apple-darwin11-llvm-gcc-**4.2: libeclipse.dylib: No such file or
>> directory
>> ------------------------------**----------
>>
>> Like Paulo I have a libeclipse.a in the Kernel/x86_64_macosx directory.
>>   Looks like the problem is the "-L" before the "-o libeclipse.dylib".
>>
>> If anyway can put together how the SourceForge binaries were compiled that
>> would be nice.
>>
>> On Sun, Oct 7, 2012 at 1:00 AM, Kish Shen <kisshen_at_cisco.com> wrote:
>>
>>  Hi Dave,
>>>
>>> The ECLiPSe Mac OS X x86 binaries from SourceForge are built on Mac OS
>>> 10.6.
>>>
>>> The single error message you have given is not enough to show what might
>>> be going wrong. In particular, I am not sure if the problem is caused by
>>> compiling on 10.8. I can't really tell where exactly the error message is
>>> from, and what exactly configure did. Is there a libeclipse.dylib (it
>>> should be in Kernel/x86_64_macosx directory)? If not, there should have
>>> been some earlier error when the building of libeclipse.dylib  failed.
>>>
>>> You don't seem to have set ECLiPSETHIRDPARTY environment variable for
>>> your build, and this probably means that few third-party components will
>>> be used for your build (configure should report what it was able to
>>> find).
>>> For ECLiPSe 6.0 onwards, we strongly recommend that you build ECLiPSe
>>> with
>>> at least bignum support, i.e. with GNU GMP (or GMP compatible lib -- for
>>> x86 Macs I use MPIR instead of GMP), because without bignums, the new
>>> ECLiPSe compiler can only compile clauses with limited number of
>>> variables,
>>> and some of ECLiPSe's own files cannot be compiled). However, I don't
>>> think
>>> this is the direct cause of your error, as your error seem to be
>>> happening
>>> earlier than this.
>>>
>>> Cheers,
>>>
>>> Kish
>>>
>>>
>>>
>>> On 06/10/2012 12:48, David Dreisigmeyer wrote:
>>>
>>>  Has anyone has compiled ECLiPSe on OS X 10.8?  If so would you be able
>>>> to
>>>> provide any details on how to go about doing it, especially for 6.0#196?
>>>>    The binary for 6.0#183 from SourceForge works though I can't get it
>>>> to
>>>> compile, ending with the error:
>>>>
>>>> i686-apple-darwin11-llvm-gcc-****4.2: libeclipse.dylib: No such file or
>>>>
>>>> directory
>>>>
>>>> I'm attempting to compile as follows:
>>>>
>>>> $ export ARCH=x86_64_macosx
>>>> $ ./configure
>>>> $ make -f Makefile.$ARCH
>>>>
>>>> Thanks,
>>>>
>>>> -Dave
>>>>
>>>>
>>>>
>>>> This body part will be downloaded on demand.
>>>>
>>>>
>>>>
>>>> This body part will be downloaded on demand.
>>>>
>>>>
>>>>
>>>
>>
>>
>


-- 
*Go Blue!*
Received on Mon Oct 08 2012 - 18:31:44 CEST

This archive was generated by hypermail 2.2.0 : Tue Oct 09 2012 - 06:14:37 CEST