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.1.1.tar.gz (1.4 MB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

sip-6.1.1-cp39-cp39-win_amd64.whl (832.3 kB view details)

Uploaded CPython 3.9Windows x86-64

sip-6.1.1-cp39-cp39-manylinux2014_x86_64.whl (1.3 MB view details)

Uploaded CPython 3.9

sip-6.1.1-cp39-cp39-macosx_10_9_x86_64.whl (827.3 kB view details)

Uploaded CPython 3.9macOS 10.9+ x86-64

sip-6.1.1-cp38-cp38-win_amd64.whl (832.2 kB view details)

Uploaded CPython 3.8Windows x86-64

sip-6.1.1-cp38-cp38-manylinux2014_x86_64.whl (1.3 MB view details)

Uploaded CPython 3.8

sip-6.1.1-cp38-cp38-macosx_10_9_x86_64.whl (827.3 kB view details)

Uploaded CPython 3.8macOS 10.9+ x86-64

sip-6.1.1-cp37-cp37m-win_amd64.whl (832.2 kB view details)

Uploaded CPython 3.7mWindows x86-64

sip-6.1.1-cp37-cp37m-manylinux2014_x86_64.whl (1.3 MB view details)

Uploaded CPython 3.7m

sip-6.1.1-cp37-cp37m-macosx_10_9_x86_64.whl (827.1 kB view details)

Uploaded CPython 3.7mmacOS 10.9+ x86-64

sip-6.1.1-cp36-cp36m-win_amd64.whl (832.2 kB view details)

Uploaded CPython 3.6mWindows x86-64

sip-6.1.1-cp36-cp36m-manylinux2014_x86_64.whl (1.3 MB view details)

Uploaded CPython 3.6m

sip-6.1.1-cp36-cp36m-macosx_10_6_intel.whl (1.0 MB view details)

Uploaded CPython 3.6mmacOS 10.6+ Intel (x86-64, i386)

File details

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

File metadata

  • Download URL: sip-6.1.1.tar.gz
  • Upload date:
  • Size: 1.4 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.1.1.tar.gz
Algorithm Hash digest
SHA256 52d25af2fcd764c4e15cc9cd1350bdb0e63f52dfa2aa3c5e7679af7fde9f7e20
MD5 4475774ff89b16f4a89cf261c3e074bc
BLAKE2b-256 f8b2fcd5e964eefce0737512fb4ea263308769c671c3b1b9b1e380a5008ffef0

See more details on using hashes here.

File details

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

File metadata

  • Download URL: sip-6.1.1-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 832.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.1.1-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 52d69f9864f468f51337f123e443882c048b26f7a4bf4a9c4d29f8cff8e8615e
MD5 08a1a45542b48c3c021aa676229faf0e
BLAKE2b-256 c03a53320cff08d508d10033b315a399879bbae26e39c79902c9195072931ba4

See more details on using hashes here.

File details

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

File metadata

  • Download URL: sip-6.1.1-cp39-cp39-manylinux2014_x86_64.whl
  • Upload date:
  • Size: 1.3 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.1.1-cp39-cp39-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 882229f6f2e7cb0bcf5d7b9fe1fa82f3fc36249d8bfa7f874e32b9af8ce3fbbd
MD5 d820c5fc4596b12a06c93f8104346dce
BLAKE2b-256 a758cbd21db88b44d9de125412eb65809351860631de0dc1498ef66a46df216c

See more details on using hashes here.

File details

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

File metadata

  • Download URL: sip-6.1.1-cp39-cp39-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 827.3 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.1.1-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 f714dd4aaafec0b2377c57980d315847e1fd06b2f49c3da5b36a2d06baac4b19
MD5 27e55c32b3f660a3e4da946655a3cbd7
BLAKE2b-256 9c56e8750bfba10d383e438e41c41a70936918d98f902ddc5e6f6ed5018c9ef6

See more details on using hashes here.

File details

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

File metadata

  • Download URL: sip-6.1.1-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 832.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.1.1-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 b774f813616a4750bd136163fd1027b2a8632fd4e004e1f46fe491b64aed6bd1
MD5 95290dad0b7b360a6062d71d957741b1
BLAKE2b-256 e3c80a3016e81c3ee11386c898ee5530709d095e7290835ba2da6776a1064b3b

See more details on using hashes here.

File details

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

File metadata

  • Download URL: sip-6.1.1-cp38-cp38-manylinux2014_x86_64.whl
  • Upload date:
  • Size: 1.3 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.1.1-cp38-cp38-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 9575510aacc279406f7f06380b5b3386daab569d2bbf4dc989ca2d195fb8fe24
MD5 33b1bcea30426355d500d5107c1c8b06
BLAKE2b-256 e8905cb2471803015067211ee2aafb81ab1c790c9a9b7b28fef2f02fa7a6be42

See more details on using hashes here.

File details

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

File metadata

  • Download URL: sip-6.1.1-cp38-cp38-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 827.3 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.1.1-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 867dbd916089fa3e947ef25efce62c7bb5edae5c341ba980a6ed732455bcad04
MD5 c3f6ac5a60b346088b295a7b30b89e42
BLAKE2b-256 11fc9f8bd5b760793372e67c97b46c58637d6b15582eb3f31639532d321f5d15

See more details on using hashes here.

File details

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

File metadata

  • Download URL: sip-6.1.1-cp37-cp37m-win_amd64.whl
  • Upload date:
  • Size: 832.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.1.1-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 f61bcb30292dda5ef81a1baae08fa09ba34a12604ac3bece82473bfdb8598590
MD5 41e32e76cc8955622f9c6f4cd931b4c4
BLAKE2b-256 4c794b79860fed25059ffaf2be137b32cc307f8a5217e10d82d9af32bd653986

See more details on using hashes here.

File details

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

File metadata

  • Download URL: sip-6.1.1-cp37-cp37m-manylinux2014_x86_64.whl
  • Upload date:
  • Size: 1.3 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.1.1-cp37-cp37m-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 8dbaf65b99a8c960e0a6eb96e0ef586707111b9971e04290b6e469dc29eab169
MD5 b0dad2791caeca95bb050bb689828912
BLAKE2b-256 c8a90f98b36656a6e85c42ed8705d8a1c6c513b3e9497aed0846de6fb981da3d

See more details on using hashes here.

File details

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

File metadata

  • Download URL: sip-6.1.1-cp37-cp37m-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 827.1 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.1.1-cp37-cp37m-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 aa45edf95ea5533e9fd52024ec9036bd3b3b097fe374799f4137b8d6bd91efca
MD5 6975189138071e334f0b74ebe7f0dc4c
BLAKE2b-256 8bb43ab996afb9cf8ac354abe3dd355032c74ff14a23f70abd430696f8955e98

See more details on using hashes here.

File details

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

File metadata

  • Download URL: sip-6.1.1-cp36-cp36m-win_amd64.whl
  • Upload date:
  • Size: 832.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.1.1-cp36-cp36m-win_amd64.whl
Algorithm Hash digest
SHA256 89b172a63f32c2b6dfc4df66e92dd34341f2fb20b8193fddeef48edd7da07e5a
MD5 962d63ee390f7dc08bd4dacab59f0a0f
BLAKE2b-256 4fbd6f4709fac3925264c7e3ded2a911a59697f5badc7e03b05acffeb83bc11e

See more details on using hashes here.

File details

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

File metadata

  • Download URL: sip-6.1.1-cp36-cp36m-manylinux2014_x86_64.whl
  • Upload date:
  • Size: 1.3 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.1.1-cp36-cp36m-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 9079768ff116697943cc71c81aae9a6e1eab5fd48b599661dfe14bda4946a775
MD5 1686d5b17fbf278cc27260509957d5dd
BLAKE2b-256 b19c7848f92dc665dfee9d5c02564eabbd085dabb04c03a5c4f1dd6a083209c6

See more details on using hashes here.

File details

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

File metadata

  • Download URL: sip-6.1.1-cp36-cp36m-macosx_10_6_intel.whl
  • Upload date:
  • Size: 1.0 MB
  • Tags: CPython 3.6m, macOS 10.6+ Intel (x86-64, i386)
  • 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.1.1-cp36-cp36m-macosx_10_6_intel.whl
Algorithm Hash digest
SHA256 23b4b69e34ec7a7ce6f0dd2d24f7a499f03dea6766a270fe047a1f65d1bea98a
MD5 5c754c023bef980ce4d90370436e8044
BLAKE2b-256 a3adf26a9d4f8f867b9053601572a63c2200a103029709af127626a939956034

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