Skip to main content

AMPS Python Client

Project description

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 2.7 or Python 3.5 and above.
  • Python distutils. Most python installations build and include this package by default, but you may run into issues building this extension module if distutils is not functioning properly on your system. Python distutils may be packaged in a standalone package named 'python-distutils', or included in 'python-devel.x86_64'. You can also run the setup script available here.
  • C++ compiler. gcc 4.4 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:

  1. dnf install redhat-rpm-config
  2. dnf install python-devel # for use with Python2
  3. dnf install python3-devel # for use with Python3
  4. 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:

  1. Run python setup.py build from 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 python setup.py --help to view command help.

  2. Check under the build directory for AMPS.so -- this is the Python extension module. Ensure this library's directory is in your PYTHONPATH.

  3. 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.

To build on Windows:

  1. Use a Visual Studio Command Prompt to create a command prompt where the necessary Visual Studio environment variables are set for command line builds.

  2. Add the Python directory (the location of the python.exe interpreter) to your path. Note: The platform of your python installation must match the target platform for this python module. If you want to build a 64-bit module, you must set your PATH to a 64-bit Python installation; for a 32-bit module, you must set it to a 32-bit installation. If you'd like to build both, you must do so separately, once with each Python installation.

  3. Run python setup.py build fom the AMPS Python Client directory to build the client module. Use the -p win32 option to build a 32-bit client module.

  4. Check under the build directory for AMPS.pyd -- this is the Python extension module. Ensure this library's directory is in your PYTHONPATH.

  5. 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 and Windows 64-bit binary wheels built with Python 2.7 and for Python 3.x. These wheel files are provided on the 60East website.

If your system is not Linux-x86-64, or you are not using Python 2.6, you can generate your own egg by running 'python setup.py bdist_wheel'.

Installing:

  1. Download the wheel file from the 60East client release page.

  2. run 'python -m pip install *.whl'.

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 developer's guide and generated reference documentation for this client are available under the doc/ directory.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

amps_python_client-5.3.5.0.tar.gz (586.4 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

amps_python_client-5.3.5.0-cp34-abi3-win_amd64.whl (623.7 kB view details)

Uploaded CPython 3.4+Windows x86-64

amps_python_client-5.3.5.0-cp34-abi3-manylinux_2_24_aarch64.whl (16.7 MB view details)

Uploaded CPython 3.4+manylinux: glibc 2.24+ ARM64

amps_python_client-5.3.5.0-cp34-abi3-manylinux1_x86_64.whl (14.7 MB view details)

Uploaded CPython 3.4+

amps_python_client-5.3.5.0-cp34-abi3-macosx_14_0_x86_64.whl (857.3 kB view details)

Uploaded CPython 3.4+macOS 14.0+ x86-64

amps_python_client-5.3.5.0-cp34-abi3-macosx_14_0_arm64.whl (766.9 kB view details)

Uploaded CPython 3.4+macOS 14.0+ ARM64

File details

Details for the file amps_python_client-5.3.5.0.tar.gz.

File metadata

  • Download URL: amps_python_client-5.3.5.0.tar.gz
  • Upload date:
  • Size: 586.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.9

File hashes

Hashes for amps_python_client-5.3.5.0.tar.gz
Algorithm Hash digest
SHA256 484b7cbf7217c96ab034ea265837e6ddb3a510ec31abaf13ce87f3ebed03d5bb
MD5 96e21a592cb7a23fbbbc4e4579886e55
BLAKE2b-256 a6c2a8d923131aa35b49025c9f53d5820aec6ddef6105468c8beb62e024526ce

See more details on using hashes here.

File details

Details for the file amps_python_client-5.3.5.0-cp34-abi3-win_amd64.whl.

File metadata

File hashes

Hashes for amps_python_client-5.3.5.0-cp34-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 217b24ba5d00ea4c6a91e549c96141385175566475d8aed4608c0144c9fc4db8
MD5 180b99e8045c87b8787b1a40ec0aa6b9
BLAKE2b-256 469926e3ce17dc5ab903a8f03129480d01a6b6b49e039fa1b321297707094c30

See more details on using hashes here.

File details

Details for the file amps_python_client-5.3.5.0-cp34-abi3-manylinux_2_24_aarch64.whl.

File metadata

File hashes

Hashes for amps_python_client-5.3.5.0-cp34-abi3-manylinux_2_24_aarch64.whl
Algorithm Hash digest
SHA256 39b1905d0b3036edb2d2c9fe8452a2717e44cca10601abfea499a6f888f2b4f1
MD5 3811148dfa35efd70883325e28a22127
BLAKE2b-256 424a58ce0bf3bcee2a5467d51e0d7279124dde455cb47bbfd92814981e3ed7eb

See more details on using hashes here.

File details

Details for the file amps_python_client-5.3.5.0-cp34-abi3-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for amps_python_client-5.3.5.0-cp34-abi3-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 daec4e0ebbe0400d74c40d0825d549c204235d275717ca43eed20dade4e9d496
MD5 0471507637648f6b4e85b3953507f242
BLAKE2b-256 00270e1123c588b9802eda81f16b2b5293e80ab3ac918b0837e470cf16fa5698

See more details on using hashes here.

File details

Details for the file amps_python_client-5.3.5.0-cp34-abi3-macosx_14_0_x86_64.whl.

File metadata

File hashes

Hashes for amps_python_client-5.3.5.0-cp34-abi3-macosx_14_0_x86_64.whl
Algorithm Hash digest
SHA256 6e2177fde5e16dd6feea82307ba250316a6e400570e15231cc6ceea3dcb74c65
MD5 890dc5a08eabf23d3583e4ca82c48c3b
BLAKE2b-256 5c75534a8128bf9f10a541f27b35908d0d5c349c4af9a44a565242e260ffda82

See more details on using hashes here.

File details

Details for the file amps_python_client-5.3.5.0-cp34-abi3-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for amps_python_client-5.3.5.0-cp34-abi3-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 76243eb245fad20ed19abb790f0cf8c6f5c54dac493e9feaf8d9b8ebe91aad3b
MD5 57c8407a5ea5b30fe2e9f94ef365af42
BLAKE2b-256 3658975b556f35a7189eb8626b679df97f9b8a13454d1f41b994b4cbcbea19e2

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page