Utilities for writing C++ extension modules.
Project description
libpy is a library to help you write amazing Python extensions in C++. libpy makes it easy to expose C++ code to Python. libpy lets you automatically wrap functions and classes. libpy is designed for high performance and safety: libpy extension modules should be both faster and safer than using the C API directly.
Requirements
libpy supports:
macOS/Linux
Python >=3.5
libpy requires:
gcc>=9 or clang>=10
numpy>=1.11.3
Optional Requirements
libpy optionally provides wrappers for the following libraries:
google sparsehash
Install
To install for development:
$ make
Otherwise, pip install libpy, making sure CC and CXX environment variables are set to the the right compiler.
Note: The installation of libpy will use the python executable to figure out information about your environment. If you are not using a virtual environment or python does not point to the Python installation you want to use (checked with which python and python --version) you must point to your Python executable using the PYTHON environment variable, i.e. PYTHON=python3 make or PYTHON=python3 pip3 install libpy.
Tests
To run the unit tests, invoke:
$ make test