EPICS is the SCADA I am working with for months, it is mainly used to control big scientific installations, such as particul accelerator and big telescopes. It is written in C, and smoothly run on various kind of devices, such as PCs, VMEs or even iPhones, and it supports various types of operating systems too: GNU/Linux, VxWorks, FreeBSD, and of course OS X. My workstation runs Scientific Linux, and is preconfigured for EPICS, but I find more convenient to be able to use it on my personnal laptop, so here are a few notes about EPICS’s installation on my MacBook.
I am running OS X 10.10.2, with fish as shell (instead of bash by default on OS X) and [Homebrew]() as packet manager. The following instructions needs these tools if you would like to follow them step-by-step, but of course you should be able to adapt them easily with another shell or another packet manager.
The most recent EPICS version is 3.15.1 currently (in the v3 branch).
A Few Requirements
First you will need to install readline, but you will probably have it yet. If not, you can get it with this command:
brew install readline.
Download it EPICS from the official website.
When downloaded, uncompress it in your Download folder.
When you build EPICS, it creates static links between binaries and libraries, so we will first copy installations files in the
/opt directory. You can choose another one, but don’t forget to update configurations files in the following notes according to your choice.
$ sudo mv base-3.15.1/ /opt $ cd base-3.15.1/ $ sudo make
When make finised to build EPICS, you can create a symbolic link between
/opt/epics. You may prefer to rename the directory, but with a symbolic link you will be able to easily keep different versions of EPICS by simply updating this link when required.
$ sudo ln -s /opt/base-3.15.1 /opt/epics
Set System Variables
In my case, I use fish so I added the following lines to my
~/.config/fish/config.fish file, but you must adapt those to your shell’s config (for example use
export instead of
set -gx with Bash) to allow EPICS to run on your system.
set -gx EPICS_BASE /opt/epics set -gx EPICS_HOST_ARCH darwin-x86 set -gx PATH $EPICS_BASE/bin/$EPICS_HOST_ARCH $PATH set -gx LD_LIBRARY_PATH $EPICS_BASE/lib/$EPICS_HOST_ARCH $LD_LIBRARY_PATH
That’s all folks!
You should now be able to call EPICS programs, such as
caget without errors. As I run and test my programs on Linux currently I don’t know if EPICS needs other stuffs to run properly, but most commands are OK, and I will update this post if necessary.