On Wed, 23 Apr 2014, Rob Arthan wrote:

The query relates to the fact that polyc doesn’t do anything with LD_RUN_PATH (or DYLD_LIBRARY_PATH on Mac OS). Am I right in thinking that libpolyml will now always be statically linked so that you no longer to need to tell the dynamic linker where to find it? (For Poly/ML versions 5.5 and earlier the ProofPower makefiles that I am updating used to create an executable that linked libpolyml dynamically.)

Just empirically, from maintaining Poly/ML executables for Isabelle since 2008 on all three platform families, my rules of thumb are like this:

  * Linux: tinkering with LD_LIBRARY_PATH and hoping for the best
    concerning the global libc/libc++ personality wrt. x86/x86_64.
    (Linux users are surprisingly ignorant about what they have.)

  * Mac OS X: tinkering with DYLD_LIBRARY_PATH and relying on the fact
    that both x86/x86_64 works on current Macs unconditionally.

  * Windows: no tinkering at all, merely relying on the fact that DLLs are
    first looked-up in the same directory as the main .exe

Classically, Cygwin always uses x86, which is not a problem due to the wonderful online heap sharing that David Matthews implemented in the past few years. Cygwin x86_64 has emerged recently, but I have not tried it yet.

What might be also interesting is MinGW for x86 or x86_64, but I have not really tried that either.


        Makarius
_______________________________________________
polyml mailing list
polyml@inf.ed.ac.uk
http://lists.inf.ed.ac.uk/mailman/listinfo/polyml

Reply via email to