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.4.4.zip (2.2 MB 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.4.4-cp34-abi3-win_amd64.whl (610.3 kB view details)

Uploaded CPython 3.4+Windows x86-64

amps_python_client-5.3.4.4-cp34-abi3-manylinux_2_24_aarch64.whl (16.4 MB view details)

Uploaded CPython 3.4+manylinux: glibc 2.24+ ARM64

amps_python_client-5.3.4.4-cp34-abi3-manylinux1_x86_64.whl (14.1 MB view details)

Uploaded CPython 3.4+

amps_python_client-5.3.4.4-cp34-abi3-macosx_10_9_universal2.whl (1.6 MB view details)

Uploaded CPython 3.4+macOS 10.9+ universal2 (ARM64, x86-64)

amps_python_client-5.3.4.4-cp27-cp27mu-manylinux1_x86_64.whl (14.1 MB view details)

Uploaded CPython 2.7mu

amps_python_client-5.3.4.4-cp27-cp27m-win_amd64.whl (724.4 kB view details)

Uploaded CPython 2.7mWindows x86-64

File details

Details for the file amps-python-client-5.3.4.4.zip.

File metadata

  • Download URL: amps-python-client-5.3.4.4.zip
  • Upload date:
  • Size: 2.2 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.10.12

File hashes

Hashes for amps-python-client-5.3.4.4.zip
Algorithm Hash digest
SHA256 76f4232b425384ebe62502ef7113e9de0101729edd0217a660fce56abeb7e266
MD5 9547422c19557b92a93bf2fcfc7326ed
BLAKE2b-256 81475ba67b5bfa7d8d561cbfabcdc87148e16aca6c04c301cc16f3e491c349cf

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for amps_python_client-5.3.4.4-cp34-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 6b07a44f0ed78866d2ca4a5cde5757e20ede6bf94f10088fb992f6feb2b9f0c7
MD5 2067aed47bae16bbdbc1759230968cf6
BLAKE2b-256 330d7a0055897ec55ce7231adef912a0cfca697439371f8ce8628a753a04919e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for amps_python_client-5.3.4.4-cp34-abi3-manylinux_2_24_aarch64.whl
Algorithm Hash digest
SHA256 42525d187a0c4a585195eadc56597e63058882bdfddad0c75bce08ec391fda96
MD5 2c79d772746bb2f379f965e8877e0462
BLAKE2b-256 58009774fa64aaec4846437058d7cf6fc49398e8793cdc679492acad5efac02b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for amps_python_client-5.3.4.4-cp34-abi3-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 315bcddda41964de6c737d6f6b8d0440152143d65cc1174a2fcb830d71a573f7
MD5 2330506d510f3203bfcadcea2ff135a1
BLAKE2b-256 40bd873e74d348133fdcf2a2bd91ca003ced686b3eb6d5ac11150d64b1976dfc

See more details on using hashes here.

File details

Details for the file amps_python_client-5.3.4.4-cp34-abi3-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for amps_python_client-5.3.4.4-cp34-abi3-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 e6c42e4e181c653f92d42e6c118e551f7741a692380ef0635d06a920747fde81
MD5 bb9f05dee84e4be5c4a4a08ec26635c6
BLAKE2b-256 a8a804e4979c8850ec987d28e4cffac7db9023d9182456e53da6820dd5e222fc

See more details on using hashes here.

File details

Details for the file amps_python_client-5.3.4.4-cp27-cp27mu-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for amps_python_client-5.3.4.4-cp27-cp27mu-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 df7352edc620992247cab2751e869668969168275fd6e4550c47edfa3faef6d2
MD5 b7f1dba33a4bb801209760311362e049
BLAKE2b-256 af550bd9271ce2d4d3a4c12bb4fe30daf9afb0b0e4a97a032ed33d7de2fca735

See more details on using hashes here.

File details

Details for the file amps_python_client-5.3.4.4-cp27-cp27m-win_amd64.whl.

File metadata

File hashes

Hashes for amps_python_client-5.3.4.4-cp27-cp27m-win_amd64.whl
Algorithm Hash digest
SHA256 88a8f802db84ad49ad3b386d2cb7275ecc0efe669c03f7d37d9625835bbc8565
MD5 1228c2bcbf52dcd5b25ac9bb43a5a59a
BLAKE2b-256 9996b332d5a4e50e965d27fb625f7acaa5fb89807c98fecbc83776221412415b

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