EPICS Core Libraries for Python
raw JSON → 7.0.10.99.0.1 verified Fri May 01 auth: no python
Provides EPICS (Experimental Physics and Industrial Control System) core C libraries bundled as Python wheels for use by Python modules like pyepics and caproto. Current version 7.0.10.99.0.1, releases as necessary to match EPICS base releases.
pip install epicscorelibs Common errors
error ImportError: libca.so: cannot open shared object file: No such file or directory ↓
cause epicscorelibs.path was not imported, so LD_LIBRARY_PATH is not set to include the bundled libraries.
fix
Add 'import epicscorelibs.path' before importing pyepics or caproto.
error AttributeError: module 'epicscorelibs' has no attribute 'path' ↓
cause Outdated version where the path module did not exist, or the installed package is corrupted.
fix
Upgrade epicscorelibs: pip install --upgrade epicscorelibs
Warnings
gotcha Direct import of epicscorelibs does nothing. You must import epicscorelibs.path to set environment variables for EPICS libraries. ↓
fix Add 'import epicscorelibs.path' before any EPICS-related imports.
gotcha The package version includes EPICS base version and a build suffix (e.g., 7.0.10.99.0.1). Do not confuse this with pyepics version. ↓
fix Check epicscorelibs version via pip show epicscorelibs; EPICS version is the first three numbers.
gotcha On some platforms, the bundled libraries may conflict with system-installed EPICS libraries. Importing epicscorelibs.path modifies PATH/LD_LIBRARY_PATH, which can shadow system EPICS. ↓
fix If using system EPICS, consider not importing epicscorelibs.path, or set environment variables to prioritize system paths.
Imports
- CLI invoke wrong
import epicscorelibscorrectpython -m epicscorelibs.cli --help - Load EPICS libraries wrong
import epicscorelibscorrectimport epicscorelibs.path # on import, sets PATH, LD_LIBRARY_PATH, etc.
Quickstart
import epicscorelibs.path
import epics
import ca
# Example: connect to an EPICS PV
pv = epics.PV('example:PV')
print(pv.get())