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.1-cp36-none-win_amd64.whl (49.4 kB view details)

Uploaded CPython 3.6 Windows x86-64

sip-4.19.1-cp36-none-win32.whl (41.0 kB view details)

Uploaded CPython 3.6 Windows x86

sip-4.19.1-cp36-cp36m-manylinux1_x86_64.whl (63.6 kB view details)

Uploaded CPython 3.6m

sip-4.19.1-cp36-cp36m-macosx_10_6_intel.whl (48.9 kB view details)

Uploaded CPython 3.6m macOS 10.6+ intel

sip-4.19.1-cp35-none-win_amd64.whl (49.5 kB view details)

Uploaded CPython 3.5 Windows x86-64

sip-4.19.1-cp35-none-win32.whl (41.0 kB view details)

Uploaded CPython 3.5 Windows x86

sip-4.19.1-cp35-cp35m-manylinux1_x86_64.whl (63.6 kB view details)

Uploaded CPython 3.5m

sip-4.19.1-cp35-cp35m-macosx_10_6_intel.whl (48.9 kB view details)

Uploaded CPython 3.5m macOS 10.6+ intel

File details

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

File metadata

File hashes

Hashes for sip-4.19.1-cp36-none-win_amd64.whl
Algorithm Hash digest
SHA256 dc58459c670f98ff40a272c8fcd155a1bc4c53541f55950e00156d10791225cd
MD5 4c9a786d9c566028d69824ef17db4ae0
BLAKE2b-256 98660420471445e9f2ecc7a9dff0250c804a528e25d00b844b25685c58d2a134

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for sip-4.19.1-cp36-none-win32.whl
Algorithm Hash digest
SHA256 324b9923e6a34a383ae7566d3fdb1406d5d738ec8785707932f6e679c3b41b22
MD5 23889910c30b74085a9421d744bce1a6
BLAKE2b-256 362c7571c4d56d0dfc9baa5d8572aa349fdd60ea13f810aee1427691b77ef15b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for sip-4.19.1-cp36-cp36m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 cdee900b905166ca7b4d45d9eb2182b016d0fd74542137d55a9634c850910347
MD5 3472346aab6be1c02a928590f9a29975
BLAKE2b-256 7d4fe7b0f20e4106857e85e0bf47c663427bb78434a241d36be9aeb4d400fbc0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for sip-4.19.1-cp36-cp36m-macosx_10_6_intel.whl
Algorithm Hash digest
SHA256 12837a6357930c36ee53e6992aeaedd1dc91a5576114352ca31c3deeabb9e58c
MD5 e1a8afad8af13dd7ccc212f4b62e4a4a
BLAKE2b-256 4ad99579f01a6c2155204bf6da55509bb2287dea55709676cfc92bcd5055aa0b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for sip-4.19.1-cp35-none-win_amd64.whl
Algorithm Hash digest
SHA256 08a6e382e1ee31a48f65121be5180ea55481b935a566226889a76b169f21c915
MD5 b70a70f15ca6e0330f632363c0983f7a
BLAKE2b-256 abe23e4435da3ed818a186f04f149a769a55c84c97d345a24e6e0574cb21c10d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for sip-4.19.1-cp35-none-win32.whl
Algorithm Hash digest
SHA256 1586cc8b7529382f9e41e4f0428f41bab0b213130ae49692886e5703983d5d68
MD5 dd39096aac18a6784bf2cc6775ea48ad
BLAKE2b-256 1211f7fee6889d91017c0e3375195ad5119afe1ecaca167d440c41d1432533f5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for sip-4.19.1-cp35-cp35m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 1c8aca6d01cf1341bcc17c52e7b3a38d1f44332f4317f49212ac1fce174f07ae
MD5 611b993ddbd73983542fa0a8e840f9a2
BLAKE2b-256 cb518df9ae05eaa4e6c1496ebc12449f12c4dd158eb7663cfa84c8054037d50b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for sip-4.19.1-cp35-cp35m-macosx_10_6_intel.whl
Algorithm Hash digest
SHA256 89835172e2890110a15517f58e066df7e715f5d04dd4a265a3c5c0668da45069
MD5 0cc698a274293e64082e0b1fe9b5e21b
BLAKE2b-256 a4135b392334328aa01a8fac128b9b3dddfbeb71926a5e887fd2f0cac273f548

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