OxCaml 5.2.0minus31 - pre-unpacked build bundle#
This single tree contains everything needed to build the OxCaml
5.2.0minus31 compiler offline:
.
├── build.sh # build driver
├── Makefile # make / make install
├── README.md
└── oxcaml-<hash>/ # the OxCaml source, already unpacked + patched
├── ... (ignore-opam.patch + cut-fix.patch applied)
├── ocaml-5.4.0/ # bootstrap archives, already unpacked here
├── dune-3.20.2/ # (inside, as ignore-opam.patch needs)
└── menhir-20231231-d3d815e4f554da68b8c247241c8f8678926eecaa/
<hash> is the short revision of oxcaml/opam-repository the packaging
came from — it records provenance only; the compiler itself is not
modified. build.sh/Makefile locate the source dir automatically.
No network and no other sources are required.
Build & install#
make PREFIX=/opt/oxcaml/5.2.0minus31 -j
make install PREFIX=/opt/oxcaml/5.2.0minus31 DESTDIR=/tmp/stage
PREFIXis baked in at configure time — the built tree is relocatable toPREFIX. Pass the samePREFIXto both commands.DESTDIRonly shifts where the tree is laid down (stillPREFIX-relative), for packaging. Omit it to install intoPREFIXdirectly.JOBScontrols parallelism (default:nproc).
The build bootstraps OCaml 5.4.0 → dune 3.20.2 → menhir into
<srcdir>/init_deps, then configures the flambda2 compiler
(--enable-middle-end=flambda2 --enable-runtime5 --enable-stack-checks --enable-poll-insertion --enable-multidomain) and builds it.
Requirements#
glibc Linux on x86_64/arm64. Tools: a C/C++ toolchain, make, m4,
autoconf, perl, rsync, tar.