skillfed

epicscorelibs

The EPICS Core libraries for use by python modules

epicscorelibs v7.0.10.99.0.1 100.9K downloads/30d#12,968 on PyPI0
License unclear EPICS AGING released

What it is and what it does

epicscorelibs packages the EPICS Core runtime libraries and C headers as a Python wheel, allowing Python modules to link against EPICS without requiring a separate system-level EPICS installation. It is not an end-user library but a build and runtime dependency for Python packages that wrap EPICS control-system functionality.

The package provides a Python API to locate headers and libraries by name, retrieve build configuration variables (EPICS_HOST_ARCH, CFLAGS, etc.), and manage version information. It includes prebuilt wheels on macOS, Linux, and Windows, with an option to compile locally if needed. Runtime dependencies are setuptools, setuptools-dso, and numpy.

Use it for:

  • Building Python EPICS client libraries without requiring system EPICS installation.
  • Packaging EPICS-based control applications for distribution across heterogeneous platforms.
  • Developing custom Python extensions that call EPICS Channel Access or PV Access APIs directly.
  • Setting up reproducible CI/CD pipelines for SCADA and experimental control systems.
  • Querying EPICS build configuration and library paths from Python setup scripts.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Provides compiled EPICS Core libraries and development headers for Python, enabling Python modules to interface with EPICS control systems without requiring separate system-level EPICS installation.

Yes, if you are building or packaging Python modules that depend on EPICS Core libraries. Install friction is moderate due to compiled dependencies, but prebuilt wheels and broad platform coverage reduce friction significantly. Verify the EPICS license terms for your use case. Aging maintenance is a minor concern but not a blocker; the repository remains active and no security vulnerabilities are recorded.

Install

epicscorelibs on PyPI

pip

pip install epicscorelibs

uv

uv add epicscorelibs

poetry

poetry add epicscorelibs

Installing epicscorelibs

Before you install

Medium install friction due to compiled wheel dependencies on setuptools-dso and numpy; prebuilt wheels available across macOS, Linux, and Windows. Maintenance status is aging—last release 184 days ago, though repository remains active with a recent commit on 2025-07-13.

License in practice

License is marked 'EPICS' with unclear treatment and no SPDX mapping. Users should verify compliance with the EPICS license terms before adopting in proprietary or restricted-distribution contexts.

Quickstart

pip install epicscorelibs

from epicscorelibs.path import include_path, lib_path, get_lib
print(get_lib('ca'))  # retrieve path to named EPICS library

Requires numpy and setuptools-dso at install time; local compilation via --no-binary requires EPICS build tools and development headers.

Verify before relying

  • Whether the EPICS license permits use in closed-source or commercial applications.
  • Current status of cothread and pyepics compatibility with this version.
  • Whether aging maintenance status affects stability or security for production SCADA deployments.

Package facts

License EPICS (unclear)
Python support supports the current Python release (>=2.7)
Install friction medium — platform-specific wheel
Runtime dependencies 3 — setuptools, setuptools-dso, numpy
Maintenance aging — 184 days since the last release
Last repo commit
First released
Downloads 100,945/month — #12,968 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: epicscorelibs-7.0.10.99.0.1-cp310-cp310-macosx_11_0_universal2.whl; epicscorelibs-7.0.10.99.0.1-cp310-cp310-manylinux2014_x86_64.whl; epicscorelibs-7.0.10.99.0.1-cp310-cp310-win_amd64.whl; epicscorelibs-7.0.10.99.0.1-cp311-cp311-macosx_11_0_universal2.whl; epicscorelibs-7.0.10.99.0.1-cp311-cp311-manylinux2014_x86_64.whl; epicscorelibs-7.0.10.99.0.1-cp311-cp311-win_amd64.whl; epicscorelibs-7.0.10.99.0.1-cp312-cp312-macosx_11_0_universal2.whl; epicscorelibs-7.0.10.99.0.1-cp312-cp312-manylinux2014_x86_64.whl; epicscorelibs-7.0.10.99.0.1-cp312-cp312-win_amd64.whl; epicscorelibs-7.0.10.99.0.1-cp313-cp313-macosx_11_0_universal2.whl; epicscorelibs-7.0.10.99.0.1-cp313-cp313-manylinux2014_x86_64.whl; epicscorelibs-7.0.10.99.0.1-cp313-cp313t-manylinux2014_x86_64.whl; epicscorelibs-7.0.10.99.0.1-cp313-cp313-win_amd64.whl; epicscorelibs-7.0.10.99.0.1-cp314-cp314-macosx_11_0_universal2.whl; epicscorelibs-7.0.10.99.0.1-cp314-cp314-manylinux_2_28_x86_64.whl; epicscorelibs-7.0.10.99.0.1-cp314-cp314t-manylinux_2_28_x86_64.whl; epicscorelibs-7.0.10.99.0.1-cp314-cp314-win_amd64.whl; epicscorelibs-7.0.10.99.0.1-cp38-cp38-macosx_11_0_universal2.whl; epicscorelibs-7.0.10.99.0.1-cp38-cp38-manylinux2010_x86_64.whl; epicscorelibs-7.0.10.99.0.1-cp38-cp38-manylinux2014_x86_64.whl

Keywords: epics, scada

Development Status :: 5 - Production/StableIntended Audience :: Science/ResearchOperating System :: MacOSOperating System :: Microsoft :: WindowsOperating System :: POSIX :: LinuxProgramming Language :: Python :: 2.7Programming Language :: Python :: 3Topic :: Scientific/EngineeringTopic :: Software Development :: LibrariesTopic :: System :: Distributed Computing

Tags

epics core libraries pythonepics bindings compiledscada control system pythonepics headers and librariesepics ca library pythondistributed control systems
epics-scadabuild-dependencycompiled-wheels

More Libraries packages