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++.
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.
Release files for sip 4.19.5
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distributions (wheels)
| File | Reset | |||
|---|---|---|---|---|
| sip-4.19.5-cp36-none-win_amd64.whl | CPython 3.6 | none | Windows x86-64 | Details |
| sip-4.19.5-cp36-none-win32.whl | CPython 3.6 | none | Windows x86-32 | Details |
| sip-4.19.5-cp36-cp36m-manylinux1_x86_64.whl | CPython 3.6 | CPython 3.6 pymalloc | Linux glibc 2.5+ x86-64 | Details |
| sip-4.19.5-cp36-cp36m-macosx_10_6_intel.whl | CPython 3.6 | CPython 3.6 pymalloc | macOS 10.6+ Intel (x86-64, i386) | Details |
| sip-4.19.5-cp35-none-win_amd64.whl | CPython 3.5 | none | Windows x86-64 | Details |
| sip-4.19.5-cp35-none-win32.whl | CPython 3.5 | none | Windows x86-32 | Details |
| sip-4.19.5-cp35-cp35m-manylinux1_x86_64.whl | CPython 3.5 | CPython 3.5 pymalloc | Linux glibc 2.5+ x86-64 | Details |
| sip-4.19.5-cp35-cp35m-macosx_10_6_intel.whl | CPython 3.5 | CPython 3.5 pymalloc | macOS 10.6+ Intel (x86-64, i386) | Details |
Total release size: 421.8 kB
Release files / sip-4.19.5-cp36-none-win_amd64.whl
| Download URL | sip-4.19.5-cp36-none-win_amd64.whl |
|---|---|
| Size | 51.1 kB |
| Tags | CPython 3.6 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
ac4ccf2f3438493cb50fac008cef305c0d3b32e5be4fa2dace9bb8c510dfafd3
|
|
BLAKE2b-256 checksum How to use checksums |
5299d2355fb8711eece13fc56957c959f99f8897803548320a0afc30803e298f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
Release files / sip-4.19.5-cp36-none-win32.whl
| Download URL | sip-4.19.5-cp36-none-win32.whl |
|---|---|
| Size | 42.7 kB |
| Tags | CPython 3.6 Windows x86-32 |
|
SHA-256 checksum How to use checksums |
565f2689c290d1822807a9150dd4db756ec3771ab9fc36920953f0f7abe0a7d0
|
|
BLAKE2b-256 checksum How to use checksums |
020bdd7ea5c0b501f0a58a269efec52fcc999cef7edc47dc405339ce130aff95
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
Release files / sip-4.19.5-cp36-cp36m-manylinux1_x86_64.whl
| Download URL | sip-4.19.5-cp36-cp36m-manylinux1_x86_64.whl |
|---|---|
| Size | 66.3 kB |
| Tags | CPython 3.6 CPython 3.6 pymalloc Linux glibc 2.5+ x86-64 |
|
SHA-256 checksum How to use checksums |
9bc303e4da9e48bc089e6381381f350106e5fdd700b6331d4509da7e473b8a0d
|
|
BLAKE2b-256 checksum How to use checksums |
71bc02cf49072278009f1517051ea9b929652ed886e029a89fd613dfb660d263
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
Release files / sip-4.19.5-cp36-cp36m-macosx_10_6_intel.whl
| Download URL | sip-4.19.5-cp36-cp36m-macosx_10_6_intel.whl |
|---|---|
| Size | 50.8 kB |
| Tags | CPython 3.6 CPython 3.6 pymalloc macOS 10.6+ Intel (x86-64, i386) |
|
SHA-256 checksum How to use checksums |
b030527a7f111e10006a5d6450156ba031d1fb37516bcfcfcb72e06c69139271
|
|
BLAKE2b-256 checksum How to use checksums |
9e75117fd2a4016694014cb48968458e8bdf3b6a384af25ca84814ed2e143034
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
Release files / sip-4.19.5-cp35-none-win_amd64.whl
| Download URL | sip-4.19.5-cp35-none-win_amd64.whl |
|---|---|
| Size | 51.2 kB |
| Tags | CPython 3.5 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
21e0aabc058be6fb4cc15fc016cab87d77d19c70ceff74b8fb90896609c4f958
|
|
BLAKE2b-256 checksum How to use checksums |
2341f47a8ef6987f5fb31a78c11365abe43c963819a0b577d817d4178d7d5e7d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
Release files / sip-4.19.5-cp35-none-win32.whl
| Download URL | sip-4.19.5-cp35-none-win32.whl |
|---|---|
| Size | 42.6 kB |
| Tags | CPython 3.5 Windows x86-32 |
|
SHA-256 checksum How to use checksums |
94a03f2210150a103ff2d464f768fd926fae04d55efbba944336a5dd859240d1
|
|
BLAKE2b-256 checksum How to use checksums |
3738a43e112980248c806a3e76262837727a4b11043b5a795a39ac38ab1478ac
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
Release files / sip-4.19.5-cp35-cp35m-manylinux1_x86_64.whl
| Download URL | sip-4.19.5-cp35-cp35m-manylinux1_x86_64.whl |
|---|---|
| Size | 66.3 kB |
| Tags | CPython 3.5 CPython 3.5 pymalloc Linux glibc 2.5+ x86-64 |
|
SHA-256 checksum How to use checksums |
780775f1c64c4af2d4e2bb284acea8779e190b69cc62b611fe24eef60ac4594c
|
|
BLAKE2b-256 checksum How to use checksums |
072577e38748728b6f2a6e86823746deba18d9dfff5768312c479ddb77abdc91
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
Release files / sip-4.19.5-cp35-cp35m-macosx_10_6_intel.whl
| Download URL | sip-4.19.5-cp35-cp35m-macosx_10_6_intel.whl |
|---|---|
| Size | 50.8 kB |
| Tags | CPython 3.5 CPython 3.5 pymalloc macOS 10.6+ Intel (x86-64, i386) |
|
SHA-256 checksum How to use checksums |
3cc775eeae2af667bfe8738f4bbbb1d137e7085c204fabcddd61bf5144e38ee3
|
|
BLAKE2b-256 checksum How to use checksums |
bde59b74ca992ff795576c59a7bb3d6bdff11bc63526361b5bf5a95162e22316
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |