package bytepdf

Not available on OCaml 5.5
  1. Overview
  2. No Docs
Tool to create PDFs that are also OCaml bytecodes

Install

dune-project
 Dependency

Authors

Maintainers

Sources

bytepdf-0.1.tbz
sha256=abe48c195143f6cfd57ff2860ae9465d73b883b4911cd7eb22332f12863f6380
md5=5480d78b88229a03019dad0d023c3162

Description

The bytepdf tool allows you to take a PDF foo.pdf and an OCaml bytecode foo.byte and merges them into a file that is both a valid PDF and a valid bytecode.

bytepdf --ml foo.byte --pdf foo.pdf -o bar.pdf

The resulting file can both be read as a pdf and executed by the ocaml interpreter:

open bar.pdf
ocamlrun bar.pdf

Furthermore, if you open the PDF with Acrobat Reader, the PDF will contain the OCaml bytecode as a file attachment. For more details, you can read the help. For an explanation of how this work, consider looking at this abstract. The only current limitation is that the bytecode should not have been statically linked with C code.

Added to opam-repository:

Dependencies (10)

  1. ocaml >= "4.08"
  2. camlpdf
  3. ocaml < "4.08"
  4. camlpdf < "2.4"
  5. obytelib >= "1.4" & < "1.6"
  6. cmdliner < "2.0.0"
  7. bos
  8. containers >= "0.12"
  9. dune >= "1.1"
  10. ocaml >= "4.03"

Dev Dependencies

None

Optional Dependencies

None

Used by

None

Conflicts

None

Build status

Results of building bytepdf with each compiler on check.ci.ocaml.org, run of against opam-repository 78c202b. All results for this package.

Each result links to its build log. To keep crawlers from overloading the site, build logs require a GitHub sign-in (see ocurrent/opam-health-check). On your first log, GitHub asks you to “Authorize opam-health-check”, the OCurrent app that runs these checks; it sees only your public profile, not your repositories. The sign-in lasts 30 days.

Version OCaml 4.11 OCaml 4.14 OCaml 5.2 OCaml 5.4 OCaml 5.5
0.1 (this version) good n/a n/a n/a n/a
  • good Package successfully built
  • partial One of the dependencies failed to build
  • bad Package failed to build
  • n/a Package is not available in this environment
  • internal Internal failure