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-5.0.0.tar.gz (981.8 kB view details)

Uploaded Source

Built Distributions

sip-5.0.0-cp38-cp38-win_amd64.whl (381.4 kB view details)

Uploaded CPython 3.8 Windows x86-64

sip-5.0.0-cp38-cp38-win32.whl (355.6 kB view details)

Uploaded CPython 3.8 Windows x86

sip-5.0.0-cp38-cp38-manylinux1_x86_64.whl (727.0 kB view details)

Uploaded CPython 3.8

sip-5.0.0-cp38-cp38-macosx_10_9_x86_64.whl (379.5 kB view details)

Uploaded CPython 3.8 macOS 10.9+ x86-64

sip-5.0.0-cp37-cp37m-win_amd64.whl (381.3 kB view details)

Uploaded CPython 3.7m Windows x86-64

sip-5.0.0-cp37-cp37m-win32.whl (355.6 kB view details)

Uploaded CPython 3.7m Windows x86

sip-5.0.0-cp37-cp37m-manylinux1_x86_64.whl (726.2 kB view details)

Uploaded CPython 3.7m

sip-5.0.0-cp37-cp37m-macosx_10_9_x86_64.whl (379.3 kB view details)

Uploaded CPython 3.7m macOS 10.9+ x86-64

sip-5.0.0-cp36-cp36m-win_amd64.whl (385.2 kB view details)

Uploaded CPython 3.6m Windows x86-64

sip-5.0.0-cp36-cp36m-win32.whl (351.0 kB view details)

Uploaded CPython 3.6m Windows x86

sip-5.0.0-cp36-cp36m-manylinux1_x86_64.whl (726.2 kB view details)

Uploaded CPython 3.6m

sip-5.0.0-cp36-cp36m-macosx_10_6_intel.whl (559.2 kB view details)

Uploaded CPython 3.6m macOS 10.6+ intel

sip-5.0.0-cp35-cp35m-win_amd64.whl (385.2 kB view details)

Uploaded CPython 3.5m Windows x86-64

sip-5.0.0-cp35-cp35m-win32.whl (351.0 kB view details)

Uploaded CPython 3.5m Windows x86

sip-5.0.0-cp35-cp35m-manylinux1_x86_64.whl (726.2 kB view details)

Uploaded CPython 3.5m

sip-5.0.0-cp35-cp35m-macosx_10_6_intel.whl (559.2 kB view details)

Uploaded CPython 3.5m macOS 10.6+ intel

File details

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

File metadata

  • Download URL: sip-5.0.0.tar.gz
  • Upload date:
  • Size: 981.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.20.1 setuptools/40.6.2 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.6.8

File hashes

Hashes for sip-5.0.0.tar.gz
Algorithm Hash digest
SHA256 c034d427f52584d63277dd7df4d16d00c5df0b5cb838e0c256865b854b7e074b
MD5 e3747a104b0d5d3c779bcc423819b6e7
BLAKE2b-256 c67fb0830b133e6fac3902ecea99acc99e41972d9b565cda5d68ae33ae37909c

See more details on using hashes here.

File details

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

File metadata

  • Download URL: sip-5.0.0-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 381.4 kB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.20.1 setuptools/40.6.2 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.6.8

File hashes

Hashes for sip-5.0.0-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 fb0a6e7f1cf0d654b004285cfad3edba18badde5ed7fc3bbca335928ab172778
MD5 f3b55d2369f7aab15796803e104d6eb1
BLAKE2b-256 13689f7d5fdb62e09f24110ad364faff2cf49b79e1d15fb4c34d7dfe77fa9ba8

See more details on using hashes here.

File details

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

File metadata

  • Download URL: sip-5.0.0-cp38-cp38-win32.whl
  • Upload date:
  • Size: 355.6 kB
  • Tags: CPython 3.8, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.20.1 setuptools/40.6.2 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.6.8

File hashes

Hashes for sip-5.0.0-cp38-cp38-win32.whl
Algorithm Hash digest
SHA256 df5beb035f3e2e89df7937bce108dddc1af3c58bd003d04b79147172a9c8b464
MD5 3527bb5895b25a50143b8f36f113fcf0
BLAKE2b-256 67d450fb9710334ef9a92074a0e8e1f9e5d4db46a043016eb7239d273c5693c6

See more details on using hashes here.

File details

Details for the file sip-5.0.0-cp38-cp38-manylinux1_x86_64.whl.

File metadata

  • Download URL: sip-5.0.0-cp38-cp38-manylinux1_x86_64.whl
  • Upload date:
  • Size: 727.0 kB
  • Tags: CPython 3.8
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.20.1 setuptools/40.6.2 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.6.8

File hashes

Hashes for sip-5.0.0-cp38-cp38-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 6de1ee204be20d2f97e0a5b41ca2805f3f2e51358d5d408e383d60a1fa6a21d0
MD5 ccb3b95ed02be299cd1e6da4273de859
BLAKE2b-256 d1750790c01bc826ae132459b91217f32e867f4c08b8c7eef236389ac0fa4051

See more details on using hashes here.

File details

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

File metadata

  • Download URL: sip-5.0.0-cp38-cp38-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 379.5 kB
  • Tags: CPython 3.8, macOS 10.9+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.20.1 setuptools/40.6.2 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.6.8

File hashes

Hashes for sip-5.0.0-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 4b04caacf5f3e31bd72a5f58582c470290a7a7c06d591292a295ed88dedf4a31
MD5 3be83a0766db3ecdd9de6d37f5d91b07
BLAKE2b-256 408ea4bb5e0a775e50e6e0046bfd3e780b71209e4b4f0247de99dd00075b0f92

See more details on using hashes here.

File details

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

File metadata

  • Download URL: sip-5.0.0-cp37-cp37m-win_amd64.whl
  • Upload date:
  • Size: 381.3 kB
  • Tags: CPython 3.7m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.20.1 setuptools/40.6.2 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.6.8

File hashes

Hashes for sip-5.0.0-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 2f359402996b1d2a959a02c5f2b9ba78e2d634d7f9f36404412d724ad218ae5a
MD5 c6267d064cd3eebf531300f91345b404
BLAKE2b-256 34f0165a837aebeb2ddaf3fb7ed4ceae55bfce89c9697e224ebe962d5bf90fd0

See more details on using hashes here.

File details

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

File metadata

  • Download URL: sip-5.0.0-cp37-cp37m-win32.whl
  • Upload date:
  • Size: 355.6 kB
  • Tags: CPython 3.7m, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.20.1 setuptools/40.6.2 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.6.8

File hashes

Hashes for sip-5.0.0-cp37-cp37m-win32.whl
Algorithm Hash digest
SHA256 6b4edcabc8fee6dcdfdc7343e15c4528fb88a092240d599b4b7ef0fec28889e6
MD5 fcecc76d45f6037fe0d35ab2b5422a28
BLAKE2b-256 cba187a058759c9c1fe102d552918e212f107d1e49fe38799c9b07184288bcda

See more details on using hashes here.

File details

Details for the file sip-5.0.0-cp37-cp37m-manylinux1_x86_64.whl.

File metadata

  • Download URL: sip-5.0.0-cp37-cp37m-manylinux1_x86_64.whl
  • Upload date:
  • Size: 726.2 kB
  • Tags: CPython 3.7m
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.20.1 setuptools/40.6.2 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.6.8

File hashes

Hashes for sip-5.0.0-cp37-cp37m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 387b4388efab7ee0bd7e9009ad736ad6f2002bb8d3b996c761bf89c2660509c2
MD5 f4ccd88475bbc222c011e1c42ec09680
BLAKE2b-256 cc1dd7d68e7677f1a02e3d0615f1e22d7340cd453d53edca481b8b099e97175a

See more details on using hashes here.

File details

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

File metadata

  • Download URL: sip-5.0.0-cp37-cp37m-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 379.3 kB
  • Tags: CPython 3.7m, macOS 10.9+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.20.1 setuptools/40.6.2 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.6.8

File hashes

Hashes for sip-5.0.0-cp37-cp37m-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 43a505771a4bbe7332aa89a879dacefcced7c3eb8e9a38d457082965e5717805
MD5 558328ad249cd1120b75feaa6930accc
BLAKE2b-256 9cb568c21528c14088f46446571410faf37539d021b2892ab5eb0f6453702ad3

See more details on using hashes here.

File details

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

File metadata

  • Download URL: sip-5.0.0-cp36-cp36m-win_amd64.whl
  • Upload date:
  • Size: 385.2 kB
  • Tags: CPython 3.6m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.20.1 setuptools/40.6.2 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.6.8

File hashes

Hashes for sip-5.0.0-cp36-cp36m-win_amd64.whl
Algorithm Hash digest
SHA256 600d4cdb041632db92edf4e020431f01335066169a9c4723083a66f859f4ea5b
MD5 4676e8b8973cb63815745a8430aff633
BLAKE2b-256 f3767eac1ad95f5bc6003df4d6dabd604868d0a25fc2dc4d8c6dba7fc72b68e5

See more details on using hashes here.

File details

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

File metadata

  • Download URL: sip-5.0.0-cp36-cp36m-win32.whl
  • Upload date:
  • Size: 351.0 kB
  • Tags: CPython 3.6m, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.20.1 setuptools/40.6.2 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.6.8

File hashes

Hashes for sip-5.0.0-cp36-cp36m-win32.whl
Algorithm Hash digest
SHA256 248a5c46d4c9dbbb2bf0b0b5b146f7440afdc7775ff21e2c90ece1353cc01f0c
MD5 9fffa22343fd9a30c4639bc9087b41cc
BLAKE2b-256 bce265de126d84aa79dedfecd68cc1df93fee44f4b8758554dff283157f2e5c4

See more details on using hashes here.

File details

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

File metadata

  • Download URL: sip-5.0.0-cp36-cp36m-manylinux1_x86_64.whl
  • Upload date:
  • Size: 726.2 kB
  • Tags: CPython 3.6m
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.20.1 setuptools/40.6.2 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.6.8

File hashes

Hashes for sip-5.0.0-cp36-cp36m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 40ced3110025669a9d2a9c026da9a30024315215fe1509b12474f8841163dc5f
MD5 e216a74c4415a374aff4d0a1b3252a58
BLAKE2b-256 d42fb98d2cceea1b7ede8ad3e617740467e3bf409539ff6ccaa8b48f977d2f25

See more details on using hashes here.

File details

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

File metadata

  • Download URL: sip-5.0.0-cp36-cp36m-macosx_10_6_intel.whl
  • Upload date:
  • Size: 559.2 kB
  • Tags: CPython 3.6m, macOS 10.6+ intel
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.20.1 setuptools/40.6.2 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.6.8

File hashes

Hashes for sip-5.0.0-cp36-cp36m-macosx_10_6_intel.whl
Algorithm Hash digest
SHA256 0d623c4d14f77f61bd46a65fa7b0b20fe244d28dc4d6bcab7da26363775b1537
MD5 bd01aacd3ddf67c732f87330f185a069
BLAKE2b-256 bec1f40030df60dc978774e478283cd0a0ebbb8b7a873a6c5dbc7ac2b006407e

See more details on using hashes here.

File details

Details for the file sip-5.0.0-cp35-cp35m-win_amd64.whl.

File metadata

  • Download URL: sip-5.0.0-cp35-cp35m-win_amd64.whl
  • Upload date:
  • Size: 385.2 kB
  • Tags: CPython 3.5m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.20.1 setuptools/40.6.2 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.6.8

File hashes

Hashes for sip-5.0.0-cp35-cp35m-win_amd64.whl
Algorithm Hash digest
SHA256 c936a91162f85a53cc9e3d3857ff2bed1db029a7dbbdd1f77486e15664dc1a13
MD5 484ee0f64c6ad6e27facf3278b437f32
BLAKE2b-256 d5a8f667c2d0cdc46fbf4f5505b989b4af70cad1f06c357fb085c9395d8017d8

See more details on using hashes here.

File details

Details for the file sip-5.0.0-cp35-cp35m-win32.whl.

File metadata

  • Download URL: sip-5.0.0-cp35-cp35m-win32.whl
  • Upload date:
  • Size: 351.0 kB
  • Tags: CPython 3.5m, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.20.1 setuptools/40.6.2 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.6.8

File hashes

Hashes for sip-5.0.0-cp35-cp35m-win32.whl
Algorithm Hash digest
SHA256 9b57936e1b08d7d5759a298bbd51438ad6fac615569a6d81035e352e3c4ce990
MD5 e9f2c3a14d35588595369b3545f61fb5
BLAKE2b-256 2eb9023fe8a0f52513691f55d5dcc24f029cd695bdb7242a5d39fb1c47e806e6

See more details on using hashes here.

File details

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

File metadata

  • Download URL: sip-5.0.0-cp35-cp35m-manylinux1_x86_64.whl
  • Upload date:
  • Size: 726.2 kB
  • Tags: CPython 3.5m
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.20.1 setuptools/40.6.2 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.6.8

File hashes

Hashes for sip-5.0.0-cp35-cp35m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 75c4ffbef3a09a0f62ae612b333a512f0ad2b9109c5c489c2207813c77b64028
MD5 099f5814461a78c5dca39f4deb5c12f0
BLAKE2b-256 7b57d8f236c9a62af584feae654817c4197bc4812e8ffc28946309a1aa18b6eb

See more details on using hashes here.

File details

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

File metadata

  • Download URL: sip-5.0.0-cp35-cp35m-macosx_10_6_intel.whl
  • Upload date:
  • Size: 559.2 kB
  • Tags: CPython 3.5m, macOS 10.6+ intel
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.20.1 setuptools/40.6.2 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.6.8

File hashes

Hashes for sip-5.0.0-cp35-cp35m-macosx_10_6_intel.whl
Algorithm Hash digest
SHA256 759334a6ecb8a06d66b9d129ee18b571d4e3b261375917d75d856063b44ef6f2
MD5 72e5bb5141c8fc6f848de1a391c06066
BLAKE2b-256 95ffe318587555a9501755af396e490613d7bc67a88456fbd2401e72356a648d

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