AMPS Python Client
Introduction
The AMPS Python Client is a Python extension module that makes it easy to connect to AMPS. This client builds upon the AMPS C++ Client and Python/C api to bring high performance AMPS connectivity to Python code.
Prerequisites
To use the AMPS Python Client, you must have the following software installed and configured on your system:
- Python 3.8 and above.
- Python setuptools. Most python installations build and include this package by default, but you may run into issues building this extension module if setuptools is not functioning properly on your system.
- C++ compiler. gcc 4.9 or greater on Linux, or a verion of Visual Studio with Mainstream Support from Microsoft (please refer to Microsoft product lifecycle policies) on Windows. Note that this must be the same compiler used to build your python distribution, else python distutils may be unable to invoke your compiler.
Fedora prerequisites:
- dnf install redhat-rpm-config
- dnf install python3-devel # for use with Python3
- dnf install gcc-c++
Building From a Git Clone
If you obtained this client by a git clone of the 60East amps-client-python repository, you also need to fetch the correct version of the AMPS C++ client submodule. To do this, issue a git submodule command to initialize and update the src/cpp submodule. One easy way to do this is by issuing the command:
git submodule update --init
which will initialize and update the submodule in one step. Note that working with submodules in git requires extra care. Visit this chapter to learn more about git submodules.
Build
This client is distributed as source code and must be compiled before it is used. The build process emits a shared library (or DLL on Windows) that can be imported into your python application.
To build on Linux:
-
Run
python3 setup.py buildfrom the AMPS Python Client directory to build the client.This script uses Python distutils to build the client library. Python distutils provides many additional options for installing the built library into your Python distribution, or otherwise controlling the output of the build process. Run
python3 setup.py --helpto view command help. -
Check under the
builddirectory forAMPS.abi3.so-- this is the Python extension module. Ensure this library's directory is in your PYTHONPATH. -
To test, run
python3 -c "import AMPS". If any errors occur importing the AMPS module, validate that the module built properly, and that the containing directory is in your PYTHONPATH.
To build on Windows:
-
Use a Visual Studio Command Prompt to create a command prompt where the necessary Visual Studio environment variables are set for command line builds.
-
Add the Python directory (the location of the python.exe interpreter) to your path.
-
Run
python setup.py buildfom the AMPS Python Client directory to build the client module. -
Check under the
builddirectory forAMPS.pyd-- this is the Python extension module. Ensure this library's directory is in your PYTHONPATH. -
To test, run
python -c "import AMPS". If any errors occur importing the AMPS module, validate that the module built properly, and that the containing directory is in your PYTHONPATH.
Installing the Python Binary Wheel
60East also provides Linux-x86-64, Linux-aarch64, Macosx-arm64, and Windows x86-64 64-bit binary wheels built for Python 3.x. These wheel files are provided on the 60East website and are available to install using pip.
Installing From the 60East website:
-
Download the wheel file from the 60East client release page.
-
run 'python3 -m pip install *.whl'.
Installing From pip:
- run 'python3 -m pip install amps-python-client'.
Troubleshooting Build Problems
Symptom: Python.h not found
Resolution: Update or install python distutils. See the entry on python distutils in the prequisites section for information on installing this package.
For More Information
The AMPS Python Developer's Guide is available on the 60East website. Generated API reference documentation for this client is available under the doc/ directory.
Release files for amps-python-client 5.3.5.5
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| amps_python_client-5.3.5.5.tar.gz | 3.5 MB | Details |
Built distributions (wheels)
| File | Reset | |||
|---|---|---|---|---|
| amps_python_client-5.3.5.5-cp38-abi3-win_amd64.whl | CPython 3.8 | abi3 | Windows x86-64 | Details |
| amps_python_client-5.3.5.5-cp38-abi3-manylinux_2_28_x86_64.whl | CPython 3.8 | abi3 | Linux glibc 2.28+ x86-64 | Details |
| amps_python_client-5.3.5.5-cp38-abi3-manylinux_2_28_aarch64.whl | CPython 3.8 | abi3 | Linux glibc 2.28+ ARM64 | Details |
| amps_python_client-5.3.5.5-cp38-abi3-macosx_14_0_arm64.whl | CPython 3.8 | abi3 | macOS 14.0+ ARM64 | Details |
Total release size: 53.7 MB
Release files / amps_python_client-5.3.5.5.tar.gz
| Download URL | amps_python_client-5.3.5.5.tar.gz |
|---|---|
| Size | 3.5 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
e29d12cac6684eabb2ce652814eeb01bac42e7ba20aca0172c0abe9a19a49007
|
|
BLAKE2b-256 checksum How to use checksums |
cf94e39409e5fb007789ddb77aa0043182a6d0f72ca892bc86cbc05345ae4d39
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.11.9
|
Release files / amps_python_client-5.3.5.5-cp38-abi3-win_amd64.whl
| Download URL | amps_python_client-5.3.5.5-cp38-abi3-win_amd64.whl |
|---|---|
| Size | 446.8 kB |
| Tags | CPython 3.8 Windows x86-64 abi3 |
|
SHA-256 checksum How to use checksums |
a402c5760b903506047acd57aeecd210bb7ccf48f3fd49a4fac6d18aeda0c31e
|
|
BLAKE2b-256 checksum How to use checksums |
1175e8f5c6eceb7bc84f130f9ba7743e7360d6bad0377ce0bc0fbf5e6796e307
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.11.9
|
Release files / amps_python_client-5.3.5.5-cp38-abi3-manylinux_2_28_x86_64.whl
| Download URL | amps_python_client-5.3.5.5-cp38-abi3-manylinux_2_28_x86_64.whl |
|---|---|
| Size | 24.6 MB |
| Tags | CPython 3.8 Linux glibc 2.28+ x86-64 abi3 |
|
SHA-256 checksum How to use checksums |
c1a5a55ac87292e6195727b9cfae4a4d9977fd9ad555c3cccc670b9bdc72985d
|
|
BLAKE2b-256 checksum How to use checksums |
0036eaa2ce13925d552869725f2f218c7ee0463a8827e7a22d364e0658d985ff
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.11.9
|
Release files / amps_python_client-5.3.5.5-cp38-abi3-manylinux_2_28_aarch64.whl
| Download URL | amps_python_client-5.3.5.5-cp38-abi3-manylinux_2_28_aarch64.whl |
|---|---|
| Size | 24.3 MB |
| Tags | CPython 3.8 Linux glibc 2.28+ ARM64 abi3 |
|
SHA-256 checksum How to use checksums |
d7759841306cb0fffe135acfb31755d69d2ddce48dd357fae4639072d1c9906b
|
|
BLAKE2b-256 checksum How to use checksums |
a376b92a33cf7656849684ecd1b2b916b95839933408b8016b9d2b2a9ad92a00
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.11.9
|
Release files / amps_python_client-5.3.5.5-cp38-abi3-macosx_14_0_arm64.whl
| Download URL | amps_python_client-5.3.5.5-cp38-abi3-macosx_14_0_arm64.whl |
|---|---|
| Size | 804.3 kB |
| Tags | CPython 3.8 abi3 macOS 14.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
35eb73486ebbf7dc1d4d701c2467e3f1683b4716a239960d234267775fda4ca9
|
|
BLAKE2b-256 checksum How to use checksums |
2c7f6eb58bc45ee7af80aa5914d532f3979059ea9cbbd4751658da0c0f8f6bf3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.11.9
|