Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

EPICS Configuration Environment (EPICS-env)

EPICS-env builds one Experimental Physics and Industrial Control System (EPICS) base and a pinned set of 32 EPICS modules from source, and installs them as one tree per release, operating system (OS), and base version. The installed tree links its libraries relative to its own location, carries a shell environment script, and holds a set of common iocsh fragments for input/output controllers (IOCs).

A make target drives every action: fetching the sources, applying carried upstream patches, configuring, building, installing, linking, and checking the result. The three verification gates are make targets as well: check.module-deps checks the module dependencies before the build, and check.deps and check.env check the library search paths and the environment script after the install.

Supported operating systems

The environment builds on six Linux OSs, each with one continuous integration (CI) workflow: Debian 12, Debian 13, Rocky Linux 8, Rocky Linux 10, Ubuntu 24.04, and Ubuntu 26.04. Every workflow builds and installs the environment, then runs check.env and check.deps on the installed tree. Every workflow also runs check.module-deps after configuration and before the build. Debian 12, Debian 13, and Rocky 8 run it through github.check; Rocky 10 and both Ubuntu workflows call it as a separate stage. Supported platforms and CI lists the container image and the build sequence of each workflow.

How to read this book

The pages follow the order in which you meet the system:

  • The tutorial, Build and use your first EPICS environment, takes you from a fresh clone to a running IOC.
  • The concept pages explain how the build pipeline, the module set, the installed tree, the verification gates, the patch carry, and the iocsh fragments work.
  • The procedure pages each complete one task, such as a module bump or an upstream fix carry.
  • The reference pages list exact values: make targets, variables, module pins, fragment macros, tools, and platforms.
  • The glossary of EPICS-env terms defines each term the pages use.

Topics outside this book

The cross build of EPICS base and modules for a Libera target is outside this book. It consists of scripts/build_base_libera.bash, scripts/build_modules_libera.bash, the conf.modules.libera target, and configure/os/CONFIG_SITE.linux-x86_64.linux-arm.