Admin/polyml/README
author haftmann
Fri, 14 Jun 2019 08:34:27 +0000
changeset 70335 9bd8c16b6627
parent 69903 63721ee8c86c
child 70988 38ade730f6df
permissions -rw-r--r--
using (*)-syntax for partially applied infix is fine, contrary to ancient op-syntax

Poly/ML for Isabelle
====================

This compilation of Poly/ML 5.8 (https://www.polyml.org) is based on the
source distribution from https://github.com/polyml/polyml/releases/tag/v5.8

The Isabelle repository provides an administrative tool "isabelle
build_polyml", which can be used in the polyml component directory as
follows.

* Linux:

  $ isabelle build_polyml -m32 -s sha1 src
  $ isabelle build_polyml -m64 -s sha1 src

* Mac OS X:

  $ isabelle build_polyml -m32 -s sha1 src
  $ isabelle build_polyml -m64 -s sha1 src

* Windows (Cygwin shell)

  $ isabelle build_polyml -M /cygdrive/c/msys64 -m32 -s sha1 src
  $ isabelle build_polyml -M /cygdrive/c/msys64 -m64 -s sha1 src


Building libgmp on Mac OS X
===========================

The build_polyml invocations above implicitly use the GNU Multiple Precision
Arithmetic Library (libgmp), but that is not available on Mac OS X by default.
Appending "--without-gmp" to the command-line omits this library. Building
libgmp properly from sources works as follows (library headers and binaries
will be placed in /usr/local).

* Download:

  $ curl https://gmplib.org/download/gmp/gmp-6.1.2.tar.xz | xz -dc | tar xf -
  $ cd gmp-6.1.2

* build:

  $ make distclean
  $ ./configure --enable-cxx --build=core2-apple-darwin"$(uname -r)"
  $ make && make check
  $ sudo make install


        Makarius
        12-Mar-2019