Skip to main content

A Python bindings generator for C/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 collection of tools that makes it very easy to create Python bindings for C and C++ libraries. It was originally developed in 1998 to create PyQt, the Python bindings for the Qt toolkit, but can be used to create bindings for any C or C++ library. For example it is also used to generate wxPython, the Python bindings for wxWidgets.

SIP comprises a set of build tools and a sip module. The build tools process a set of specification files and generates C or C++ code which is then compiled to create the bindings extension module. Several extension modules may be installed in the same Python package. Extension modules can be built so that they are are independent of the version of Python being used. In other words a wheel created from them can be installed with any version of Python starting with v3.5.

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 a copy of the corresponding header file.

The sip module provides support functions to the automatically generated code. The sip module is installed as part of the same Python package as the generated extension modules. Unlike the extension modules the sip module is specific to a particular version of Python (e.g. v3.5, v3.6, v3.7, v3.8).

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 can be installed from PyPI:

pip install sip

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 Distribution

sip-6.0.2.tar.gz (1.2 MB view details)

Uploaded Source

Built Distributions

sip-6.0.2-cp39-cp39-win_amd64.whl (610.3 kB view details)

Uploaded CPython 3.9 Windows x86-64

sip-6.0.2-cp39-cp39-win32.whl (583.3 kB view details)

Uploaded CPython 3.9 Windows x86

sip-6.0.2-cp39-cp39-manylinux2014_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.9

sip-6.0.2-cp39-cp39-macosx_10_9_x86_64.whl (605.5 kB view details)

Uploaded CPython 3.9 macOS 10.9+ x86-64

sip-6.0.2-cp38-cp38-win_amd64.whl (610.2 kB view details)

Uploaded CPython 3.8 Windows x86-64

sip-6.0.2-cp38-cp38-win32.whl (583.2 kB view details)

Uploaded CPython 3.8 Windows x86

sip-6.0.2-cp38-cp38-manylinux2014_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.8

sip-6.0.2-cp38-cp38-macosx_10_9_x86_64.whl (605.5 kB view details)

Uploaded CPython 3.8 macOS 10.9+ x86-64

sip-6.0.2-cp37-cp37m-win_amd64.whl (610.2 kB view details)

Uploaded CPython 3.7m Windows x86-64

sip-6.0.2-cp37-cp37m-win32.whl (583.1 kB view details)

Uploaded CPython 3.7m Windows x86

sip-6.0.2-cp37-cp37m-manylinux2014_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.7m

sip-6.0.2-cp37-cp37m-macosx_10_9_x86_64.whl (605.2 kB view details)

Uploaded CPython 3.7m macOS 10.9+ x86-64

sip-6.0.2-cp36-cp36m-win_amd64.whl (610.2 kB view details)

Uploaded CPython 3.6m Windows x86-64

sip-6.0.2-cp36-cp36m-win32.whl (583.1 kB view details)

Uploaded CPython 3.6m Windows x86

sip-6.0.2-cp36-cp36m-manylinux2014_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.6m

sip-6.0.2-cp36-cp36m-macosx_10_6_intel.whl (790.0 kB view details)

Uploaded CPython 3.6m macOS 10.6+ intel

File details

Details for the file sip-6.0.2.tar.gz.

File metadata

  • Download URL: sip-6.0.2.tar.gz
  • Upload date:
  • Size: 1.2 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.8.0

File hashes

Hashes for sip-6.0.2.tar.gz
Algorithm Hash digest
SHA256 38633bfaa479b1dd35df8f414ffc5c5a342f174ca0c6a21d0e8eb359e33c35b9
MD5 ade59b2eb173052c39921c1728400e2a
BLAKE2b-256 59a21448944c30a01bd8121143dbd5d9148e63ea7c9a3a737fa739868cffd0ae

See more details on using hashes here.

File details

Details for the file sip-6.0.2-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: sip-6.0.2-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 610.3 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.8.0

File hashes

Hashes for sip-6.0.2-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 2ca17e37e21f8af27b30bbaa2d25bcbb8520992107fbbfcd82d70f398cde0af8
MD5 8b0bd025a65fa0417649e1270c170a79
BLAKE2b-256 e958f876c610919e621336b7e3c52e22c233b03ee8a98e9def3fd1bc1a47b0b0

See more details on using hashes here.

File details

Details for the file sip-6.0.2-cp39-cp39-win32.whl.

File metadata

  • Download URL: sip-6.0.2-cp39-cp39-win32.whl
  • Upload date:
  • Size: 583.3 kB
  • Tags: CPython 3.9, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.8.0

File hashes

Hashes for sip-6.0.2-cp39-cp39-win32.whl
Algorithm Hash digest
SHA256 d9ce146d565ea84c9e3c3710db22791e721ab3b7808676f1a52a47ac5d63637a
MD5 5a78d82bb8b037732ede85980b7716ce
BLAKE2b-256 4b88533c45a963e10e960e17cc451768e21f34610c2cd418001b28375f0e8e70

See more details on using hashes here.

File details

Details for the file sip-6.0.2-cp39-cp39-manylinux2014_x86_64.whl.

File metadata

  • Download URL: sip-6.0.2-cp39-cp39-manylinux2014_x86_64.whl
  • Upload date:
  • Size: 1.1 MB
  • Tags: CPython 3.9
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.8.0

File hashes

Hashes for sip-6.0.2-cp39-cp39-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 2300f7e496676799c98408f1873dc0c94d17d84d202607f30af977b99240d510
MD5 d1bcae5423a2c8534d619b8408843858
BLAKE2b-256 c5919b99ab7707d07f92c2baa8d7fd8bf33e7543601702d47c72bbc70a2dc83f

See more details on using hashes here.

File details

Details for the file sip-6.0.2-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

  • Download URL: sip-6.0.2-cp39-cp39-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 605.5 kB
  • Tags: CPython 3.9, macOS 10.9+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.8.0

File hashes

Hashes for sip-6.0.2-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 6fe81f4657842671bce615cfabb10408419667832e497a0f3ee47d7c1590e108
MD5 0e6c3c0c5aed5747dc105c94b7f804eb
BLAKE2b-256 75f96fb24c11fa4d83aac7b8cb89f6e98a627e01149e53130d112d7f387415a0

See more details on using hashes here.

File details

Details for the file sip-6.0.2-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: sip-6.0.2-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 610.2 kB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.8.0

File hashes

Hashes for sip-6.0.2-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 e1704dbeac74ba70767f48e9ce7567e965d335624ae5ac708f374691f17de791
MD5 6841c35add665f33be8354276bcb9e92
BLAKE2b-256 9af609a392716875903fe3c43e5cdf4af9af720ff67d9f8268309362c336bba0

See more details on using hashes here.

File details

Details for the file sip-6.0.2-cp38-cp38-win32.whl.

File metadata

  • Download URL: sip-6.0.2-cp38-cp38-win32.whl
  • Upload date:
  • Size: 583.2 kB
  • Tags: CPython 3.8, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.8.0

File hashes

Hashes for sip-6.0.2-cp38-cp38-win32.whl
Algorithm Hash digest
SHA256 90c63635431735939d349544f9eb4739e9c6bdd9fa25c2b4fa95bae385df62a0
MD5 f1591bbe5d0a36eb4f1961e5ea6262b9
BLAKE2b-256 4c300b550dc621c57758962a4615722e85789587d670ef9d3d701353148532ab

See more details on using hashes here.

File details

Details for the file sip-6.0.2-cp38-cp38-manylinux2014_x86_64.whl.

File metadata

  • Download URL: sip-6.0.2-cp38-cp38-manylinux2014_x86_64.whl
  • Upload date:
  • Size: 1.1 MB
  • Tags: CPython 3.8
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.8.0

File hashes

Hashes for sip-6.0.2-cp38-cp38-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 07ddfa19c212237a8735aaf47f44d64930435328211d8e94ce193ddad05358ef
MD5 7f449536fbff35d865c8acddc1e89694
BLAKE2b-256 a04c0c38eacddb8b38c4c687cabca3a454b543c5404effedd5c81192f5f49d16

See more details on using hashes here.

File details

Details for the file sip-6.0.2-cp38-cp38-macosx_10_9_x86_64.whl.

File metadata

  • Download URL: sip-6.0.2-cp38-cp38-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 605.5 kB
  • Tags: CPython 3.8, macOS 10.9+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.8.0

File hashes

Hashes for sip-6.0.2-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 57e97d91be095452b75b6a22e527f159c45aa98af1092874c0fcdf53d48fc76a
MD5 c8b7f8f4d9c88d556573c0cb22ca0621
BLAKE2b-256 ce49b48becadd6dc10e4ce129dd68e97a538d5dff7d6d27cb8c680d708cf20d5

See more details on using hashes here.

File details

Details for the file sip-6.0.2-cp37-cp37m-win_amd64.whl.

File metadata

  • Download URL: sip-6.0.2-cp37-cp37m-win_amd64.whl
  • Upload date:
  • Size: 610.2 kB
  • Tags: CPython 3.7m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.8.0

File hashes

Hashes for sip-6.0.2-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 106caf7d801d458d239ed6bfe141002c9ad3e17104965480199d76017bfec6fa
MD5 6a9b9dcc918c630ed5537399778afc67
BLAKE2b-256 705ae3b63a33ea2fe53ffbd4d939e26316ee4a6c95234a349eb198e3ec072b93

See more details on using hashes here.

File details

Details for the file sip-6.0.2-cp37-cp37m-win32.whl.

File metadata

  • Download URL: sip-6.0.2-cp37-cp37m-win32.whl
  • Upload date:
  • Size: 583.1 kB
  • Tags: CPython 3.7m, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.8.0

File hashes

Hashes for sip-6.0.2-cp37-cp37m-win32.whl
Algorithm Hash digest
SHA256 7425d0499ff277ce21cc0a14ee6b1b8717a3768728e4c833b04d0f5eecb4ac4e
MD5 ee3d90d12336c522b7ce6dba7ee34997
BLAKE2b-256 63b41d570c2c06395b6d5d6fb7520939e0fa22c7f7ad8cf70534168b8f6d9b30

See more details on using hashes here.

File details

Details for the file sip-6.0.2-cp37-cp37m-manylinux2014_x86_64.whl.

File metadata

  • Download URL: sip-6.0.2-cp37-cp37m-manylinux2014_x86_64.whl
  • Upload date:
  • Size: 1.1 MB
  • Tags: CPython 3.7m
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.8.0

File hashes

Hashes for sip-6.0.2-cp37-cp37m-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 76bf045b1aff74b1d583ff8a969cf8e384449d4e3992b616107b03aecc8a12e7
MD5 a6c28ac7d10234a9a7520b1b43f76c18
BLAKE2b-256 b366104984b7ffc59d501cb7ba3dd5bebe039ef5f867ee25c8905be9abffbce0

See more details on using hashes here.

File details

Details for the file sip-6.0.2-cp37-cp37m-macosx_10_9_x86_64.whl.

File metadata

  • Download URL: sip-6.0.2-cp37-cp37m-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 605.2 kB
  • Tags: CPython 3.7m, macOS 10.9+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.8.0

File hashes

Hashes for sip-6.0.2-cp37-cp37m-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 1fa44dbd224f835c7c30d041ee720e9113f8daf90e18167d5830df49174b7a9e
MD5 e59fe784852330c6265c6ea348ad413d
BLAKE2b-256 9758f77723d59f5c63e0adfcff04c8e1d7fd52529776858aaa872d296239c8d0

See more details on using hashes here.

File details

Details for the file sip-6.0.2-cp36-cp36m-win_amd64.whl.

File metadata

  • Download URL: sip-6.0.2-cp36-cp36m-win_amd64.whl
  • Upload date:
  • Size: 610.2 kB
  • Tags: CPython 3.6m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.8.0

File hashes

Hashes for sip-6.0.2-cp36-cp36m-win_amd64.whl
Algorithm Hash digest
SHA256 e2f28be57a41689237acaadbd30a05a938eb111678b72b43458e6aed7da62752
MD5 ef02ee30277b36d569a836a4c663d46b
BLAKE2b-256 7fc6ab21fce29706415eac1b9a19e0c0e904de62246dbcee1a35d5352f59dfff

See more details on using hashes here.

File details

Details for the file sip-6.0.2-cp36-cp36m-win32.whl.

File metadata

  • Download URL: sip-6.0.2-cp36-cp36m-win32.whl
  • Upload date:
  • Size: 583.1 kB
  • Tags: CPython 3.6m, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.8.0

File hashes

Hashes for sip-6.0.2-cp36-cp36m-win32.whl
Algorithm Hash digest
SHA256 e4d4fdf35b47a505701f667ad5974458dc43c678eb09e62b7c661af13043d917
MD5 7f328cf9b1ef0538e9e60853ade23222
BLAKE2b-256 9ccba327aa1d44ae893d65cc39355c0e7e73fc38a4c25c6bc55f64680fb23afb

See more details on using hashes here.

File details

Details for the file sip-6.0.2-cp36-cp36m-manylinux2014_x86_64.whl.

File metadata

  • Download URL: sip-6.0.2-cp36-cp36m-manylinux2014_x86_64.whl
  • Upload date:
  • Size: 1.1 MB
  • Tags: CPython 3.6m
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.8.0

File hashes

Hashes for sip-6.0.2-cp36-cp36m-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b9fad685f3d8ac6ca27dab284d841565ae81d2262d4d3a409432f53859c73afc
MD5 90a933b1664207b4c5c7c8e99b0c36d2
BLAKE2b-256 55e52a679a49890f33ef60dd8614b4ff0241bf38d80bf4e2ec69d3949c401064

See more details on using hashes here.

File details

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

File metadata

  • Download URL: sip-6.0.2-cp36-cp36m-macosx_10_6_intel.whl
  • Upload date:
  • Size: 790.0 kB
  • Tags: CPython 3.6m, macOS 10.6+ intel
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.8.0

File hashes

Hashes for sip-6.0.2-cp36-cp36m-macosx_10_6_intel.whl
Algorithm Hash digest
SHA256 36a677e83f5d9f8d30fe3a1b3b1024373bf3a962b0fc8cf9b82d8b3d7fc3b4d9
MD5 1b3c6c2d64f80699554fdec08a5dcd0f
BLAKE2b-256 e8fc3feadd9343639abb61ca742fab84ab24e96d824d4b64a1a46bd7e61dd74c

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