This repository provides a pre-built binary distribution of the EPICS environment specifically designed for the Advanced Light Source Upgrade (ALS-U) project.
This distribution simplifies setting up the required EPICS environment for developing and running IOCs and client applications.
This binary distribution is built from the following core repositories:
For comprehensive instructions on how to use this distribution, set up your development environment, and build EPICS IOCs, please refer to the full ALS-U EPICS Environment training materials and resources:
- Full Training Website:
https://jeonghanlee.github.io/epics-trainings/ - IOC Template Tools:
https://github.com/jeonghanlee/EPICS-IOC-template-tools - IOC Demo Project:
https://github.com/jeonghanlee/EPICS-IOC-Demo
These resources cover installation, configuration, and development workflows.
Clone the EPICS environment repository using Git.
Please use --depth 1, which you only need for this distribution.
$ git clone --depth 1 https://github.com/jeonghanlee/EPICS-env-distribution.git By cloning the repository, you have the environment at the ${HOME}/epics folder. In most cases, you are ready to use it.
The EPICS environment supports multiple operating system versions and EPICS versions. Please note that the pre-built binaries included in this environment currently target the Linux x86_64 architecture exclusively.
To select and activate a specific environment version in your current terminal session, you need to source the appropriate setEpicsEnv.bash script corresponding to your operating system and desired EPICS version:
# Example for EPICS 7.0.10 on Debian 13 (x86_64)
source ~/EPICS-env-distribution/1.2.0/debian-12/7.0.10/setEpicsEnv.bashSourcing the script sets up necessary environment variables like EPICS_BASE, PATH, and LD_LIBRARY_PATH. The output should resemble this (user and specific paths will vary):
Set the EPICS Environment as follows:
THIS Source NAME : setEpicsEnv.bash
THIS Source PATH : /home/jeonglee/EPICS-env-distribution/1.2.0/debian-13/7.0.10
EPICS_BASE : /home/jeonglee/EPICS-env-distribution/1.2.0/debian-13/7.0.10/base
EPICS_HOST_ARCH : linux-x86_64
EPICS_MODULES : /home/jeonglee/EPICS-env-distribution/1.2.0/debian-13/7.0.10/modules
PATH : /home/jeonglee/EPICS-env-distribution/1.2.0/debian-13/7.0.10/modules/pmac/bin/linux-x86_64:/home/jeonglee/EPICS-env-distribution/1.2.0/debian-13/7.0.10/modules/pvxs/bin/linux-x86_64:/home/jeonglee/EPICS-env-distribution/1.2.0/debian-13/7.0.10/base/bin/linux-x86_64:/home/jeonglee/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games
LD_LIBRARY_PATH : /home/jeonglee/EPICS-env-distribution/1.2.0/debian-13/7.0.10/modules/pvxs/bundle/usr/linux-x86_64/lib:/home/jeonglee/EPICS-env-distribution/1.2.0/debian-13/7.0.10/base/lib/linux-x86_64
Enjoy Everlasting EPICS!
Note how the EPICS_HOST_ARCH variable and the paths explicitly mention linux-x86_64.
Once the environment is sourced, verify that the EPICS command-line tools are accessible in your PATH:
# Check help output for an EPICS command-line tool (e.g., caput)
$ caput -h
# Verify the location of an EPICS command-line tool (e.g., caget)
$ which cagetIf these commands run successfully and show help/path information, you have successfully configured the ALS-U EPICS environment in your current terminal session.