Dune
  • Getting Started and Core Concepts
  • How-to Guides
  • Reference Manual
  • Explanation
  • Advanced Topics
  • Miscellaneous
Dune
  • Dune Documentation
  • Edit on GitHub

Dune Documentation¶

Dune is a build system for OCaml projects. Using it, you can build executables, libraries, run tests, and much more.

  • Getting Started and Core Concepts
    • Overview
    • Quickstart
    • Command-Line Interface
  • How-to Guides
    • How to Install Dune
    • How to Set up Automatic Formatting
    • How to Generate Opam Files from dune-project
    • Cross-Compilation
    • Dealing with Foreign Libraries
    • Generating Documentation
    • How to Load Additional Files at Runtime
    • Instrumentation
    • JavaScript Compilation With Js_of_ocaml
    • JavaScript Compilation With Melange
    • Virtual Libraries & Variants
    • Writing and Running Tests
    • How to Bundle Resources
    • How to Load a Project in a Toplevel
    • Using Rule Generation
  • Reference Manual
    • dune
    • dune-project
    • dune-workspace
    • config
    • Lexical Conventions
    • Actions
    • Ordered Set Language
    • Boolean Language
    • Predicate Language
    • Library Dependencies
    • Preprocessing Specification
    • Cram Tests
    • Scopes
    • Variables
    • Dependency Specification
    • OCaml Flags
    • Sandboxing
    • Locks
    • Diffing and Promotion
    • Package Specification
    • Aliases
    • Foreign Sources, Archives, and Objects
    • Command Line Interface
    • Dune Libraries
    • Dune Cache
    • Coq
    • Dune RPC
    • Packages
    • Findlib Integration
  • Explanation
    • How Preprocessing Works
    • The OCaml Ecosystem
    • How Dune integrates with opam
    • How Dune Uses Dune to Build Dune
    • The Dune Mental Model
  • Advanced Topics
    • Dynamic Loading of Packages with Findlib
    • Profiling Dune
    • Package Version
    • OCaml Syntax
    • Variables for Artifacts
    • Building an Ad Hoc .cmxs
  • Miscellaneous
    • FAQ
    • Goal of Dune
    • Working on the Dune Codebase
Next

© Copyright 2024, Jérémie Dimino.

Built with Sphinx using a theme provided by Read the Docs.