Skip to main content

Python extension module generator for C and C++ libraries

Project description

What is SIP?

One of the features of Python that makes it so powerful is the ability to take existing libraries, written in C or C++, and make them available as Python extension modules. Such extension modules are often called bindings for the library.

SIP is a tool that makes it very easy to create Python bindings for C and C++ libraries. It was originally developed to create PyQt, the Python bindings for the Qt toolkit, but can be used to create bindings for any C or C++ library.

SIP comprises a code generator and a Python module. The code generator processes a set of specification files and generates C or C++ code which is then compiled to create the bindings extension module. The sip Python module provides support functions to the automatically generated code.

The specification files contain a description of the interface of the C or C++ library, i.e. the classes, methods, functions and variables. The format of a specification file is almost identical to a C or C++ header file, so much so that the easiest way of creating a specification file is to edit the corresponding header file.

SIP makes it easy to exploit existing C or C++ libraries in a productive interpretive programming environment. SIP also makes it easy to take a Python application (maybe a prototype) and selectively implement parts of the application (maybe for performance reasons) in C or C++.

Author

SIP is copyright (c) Riverbank Computing Limited. Its homepage is https://www.riverbankcomputing.com/software/sip/.

Support may be obtained from the PyQt mailing list at https://www.riverbankcomputing.com/mailman/listinfo/pyqt/.

License

SIP is released under the GPL v2, GPL v3 licenses, and under a license similar to the BSD license.

Installation

SIP source packages, and Linux 64-bit wheels, can be dowloaded from https://www.riverbankcomputing.com/software/sip/download/.

Wheels for 32 and 64-bit Windows, 64-bit OS X and 64-bit Linux can be installed from PyPI:

pip3 install sip

All wheels include the sip extension module but do not include the code generator.

Documentation

The documentation for the latest release can be found here.

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

sip-4.19.6-cp36-none-win_amd64.whl (51.1 kB view details)

Uploaded CPython 3.6 Windows x86-64

sip-4.19.6-cp36-none-win32.whl (42.6 kB view details)

Uploaded CPython 3.6 Windows x86

sip-4.19.6-cp36-cp36m-manylinux1_x86_64.whl (66.3 kB view details)

Uploaded CPython 3.6m

sip-4.19.6-cp36-cp36m-macosx_10_6_intel.whl (50.8 kB view details)

Uploaded CPython 3.6m macOS 10.6+ intel

sip-4.19.6-cp35-none-win_amd64.whl (51.2 kB view details)

Uploaded CPython 3.5 Windows x86-64

sip-4.19.6-cp35-none-win32.whl (42.6 kB view details)

Uploaded CPython 3.5 Windows x86

sip-4.19.6-cp35-cp35m-manylinux1_x86_64.whl (66.3 kB view details)

Uploaded CPython 3.5m

sip-4.19.6-cp35-cp35m-macosx_10_6_intel.whl (50.8 kB view details)

Uploaded CPython 3.5m macOS 10.6+ intel

File details

Details for the file sip-4.19.6-cp36-none-win_amd64.whl.

File metadata

File hashes

Hashes for sip-4.19.6-cp36-none-win_amd64.whl
Algorithm Hash digest
SHA256 a86d9c22471926663a290a2af5ea32b37df201e85b3aa81a473ccdffc35ce83a
MD5 8c3ca01aa04485a4b29081bdcd551183
BLAKE2b-256 0d7674bc717a20a0dfb775c96ca3c07c2aad9383efe46faa5e7ed517f7111b53

See more details on using hashes here.

File details

Details for the file sip-4.19.6-cp36-none-win32.whl.

File metadata

File hashes

Hashes for sip-4.19.6-cp36-none-win32.whl
Algorithm Hash digest
SHA256 7b07a3718217eed881b8ad6d5ca528b597bbc913229312e465383c79194b5a6a
MD5 1ad7ab56255f5dcd5f36af566cf1cd25
BLAKE2b-256 47e98c8d54c17364a12c9004ee40a04667834cca0cac816dc387e72aa6d7e6df

See more details on using hashes here.

File details

Details for the file sip-4.19.6-cp36-cp36m-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for sip-4.19.6-cp36-cp36m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 3f4604273a132dbeaf2b6504d10fef384a771f96beff3e91549d14f93b88aa1e
MD5 84ead7f25de9b92cc90632758dd29506
BLAKE2b-256 8e9e9587f4519fa2aec51e3419649e01b3717ed2e7556a461762e71e3aeea2db

See more details on using hashes here.

File details

Details for the file sip-4.19.6-cp36-cp36m-macosx_10_6_intel.whl.

File metadata

File hashes

Hashes for sip-4.19.6-cp36-cp36m-macosx_10_6_intel.whl
Algorithm Hash digest
SHA256 379a6788395fe9dbaa0e266a4cbae94779180f4b6cabf876a304a32f78767323
MD5 e9c6aa6d7664fa7f5853339bd8fe28a0
BLAKE2b-256 0386ccc7afea2b2c67d6dc75616332babd1c8ee673e7ace2d68f7bfe870313eb

See more details on using hashes here.

File details

Details for the file sip-4.19.6-cp35-none-win_amd64.whl.

File metadata

File hashes

Hashes for sip-4.19.6-cp35-none-win_amd64.whl
Algorithm Hash digest
SHA256 6fa06620b1fc3a948e07a220ad055bb8338f67045f95955ccb821cd85f00ad3b
MD5 be24efde067e45181ef7668c66aba80a
BLAKE2b-256 bd8b71ac5dab83aa1ac74e988782cf1b978999db542c8a160b64166b184fcc73

See more details on using hashes here.

File details

Details for the file sip-4.19.6-cp35-none-win32.whl.

File metadata

File hashes

Hashes for sip-4.19.6-cp35-none-win32.whl
Algorithm Hash digest
SHA256 ade428b0fe6a2b95b3c46a931e4826d98a52f3a1535056b65d76759353833fa7
MD5 5992d5cfe5ff57add155bee00b6da886
BLAKE2b-256 0f0e258a279eddc66af0bb075cb48ebbbc34a6d81101820e86c0c75d0145644e

See more details on using hashes here.

File details

Details for the file sip-4.19.6-cp35-cp35m-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for sip-4.19.6-cp35-cp35m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 0c30f52addb5a4f289e17b4d227330dc751c8d6096aa667ded202123817f5ff8
MD5 9003cba2f86305251cb4d05783041bcc
BLAKE2b-256 1d2be62c37ca6e560f5897479c8cfb4929e9edd1733ac31cfe03a5ff459a119c

See more details on using hashes here.

File details

Details for the file sip-4.19.6-cp35-cp35m-macosx_10_6_intel.whl.

File metadata

File hashes

Hashes for sip-4.19.6-cp35-cp35m-macosx_10_6_intel.whl
Algorithm Hash digest
SHA256 7d3a56a073081c6cb74a2766fea165da7de4402bc7b7dcd3733c2e2e5d0c7501
MD5 fa9e16f50793e8c32ccdb11ecc3d1651
BLAKE2b-256 15dc73c0cef6579a5393b65a38536d20a5b75c689ea41b24ac6eff06dfa2a8e5

See more details on using hashes here.

Supported by

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