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 Python module provides support functions to the automatically generated code. Normally a package containing SIP generated bindings includes a private copy of the Python module.
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 can be dowloaded from https://www.riverbankcomputing.com/software/sip/download/.
Wheels containing the private copy of the Python module for PyQt5 for 32 and 64-bit Windows, 64-bit macOS and 64-bit Linux can be installed from PyPI:
pip3 install PyQt5-sip
Documentation
The documentation for the latest release can be found here.
Release files for PyQt5-sip 4.19.14
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distributions (wheels)
| File | Reset | |||
|---|---|---|---|---|
| PyQt5_sip-4.19.14-cp37-none-win_amd64.whl | CPython 3.7 | none | Windows x86-64 | Details |
| PyQt5_sip-4.19.14-cp37-none-win32.whl | CPython 3.7 | none | Windows x86-32 | Details |
| PyQt5_sip-4.19.14-cp37-cp37m-manylinux1_x86_64.whl | CPython 3.7 | CPython 3.7 pymalloc | Linux glibc 2.5+ x86-64 | Details |
| PyQt5_sip-4.19.14-cp37-cp37m-macosx_10_6_intel.whl | CPython 3.7 | CPython 3.7 pymalloc | macOS 10.6+ Intel (x86-64, i386) | Details |
| PyQt5_sip-4.19.14-cp36-none-win_amd64.whl | CPython 3.6 | none | Windows x86-64 | Details |
| PyQt5_sip-4.19.14-cp36-none-win32.whl | CPython 3.6 | none | Windows x86-32 | Details |
| PyQt5_sip-4.19.14-cp36-cp36m-manylinux1_x86_64.whl | CPython 3.6 | CPython 3.6 pymalloc | Linux glibc 2.5+ x86-64 | Details |
| PyQt5_sip-4.19.14-cp36-cp36m-macosx_10_6_intel.whl | CPython 3.6 | CPython 3.6 pymalloc | macOS 10.6+ Intel (x86-64, i386) | Details |
| PyQt5_sip-4.19.14-cp35-none-win_amd64.whl | CPython 3.5 | none | Windows x86-64 | Details |
| PyQt5_sip-4.19.14-cp35-none-win32.whl | CPython 3.5 | none | Windows x86-32 | Details |
| PyQt5_sip-4.19.14-cp35-cp35m-manylinux1_x86_64.whl | CPython 3.5 | CPython 3.5 pymalloc | Linux glibc 2.5+ x86-64 | Details |
| PyQt5_sip-4.19.14-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:646.4 kB
Release files / PyQt5_sip-4.19.14-cp37-none-win_amd64.whl
| Download URL | PyQt5_sip-4.19.14-cp37-none-win_amd64.whl |
|---|---|
| Size | 52.0 kB |
| Tags | CPython 3.7 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
6b65d2b14084eb583bf4cf68b97ade295fabae5f5bf2aae0ab00ab30533f1c60
|
|
BLAKE2b-256 checksum How to use checksums |
e4e55e9462008239783720c3eb81d73d2101cc2d5666c2e4db40fe594071d8a7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is 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.7
|
Release files / PyQt5_sip-4.19.14-cp37-none-win32.whl
| Download URL | PyQt5_sip-4.19.14-cp37-none-win32.whl |
|---|---|
| Size | 44.4 kB |
| Tags | CPython 3.7 Windows x86-32 |
|
SHA-256 checksum How to use checksums |
40504f96ecb834e54491ead558589bfd773056dba7f2df76599a06fdd8ed1ead
|
|
BLAKE2b-256 checksum How to use checksums |
3273ef5dc9cc37c132b705afd58aaf4ef7db8036849a53cb35ce45d864d96117
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is 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.7
|
Release files / PyQt5_sip-4.19.14-cp37-cp37m-manylinux1_x86_64.whl
| Download URL | PyQt5_sip-4.19.14-cp37-cp37m-manylinux1_x86_64.whl |
|---|---|
| Size | 67.3 kB |
| Tags | CPython 3.7 CPython 3.7 pymalloc Linux glibc 2.5+ x86-64 |
|
SHA-256 checksum How to use checksums |
04bd0bb8b6f8fa03c2dfbdfff0c8c9bfb3f46a21dd4cac73983dae93bf949523
|
|
BLAKE2b-256 checksum How to use checksums |
ae9c74fba0b62a0756d214f9aded5b0184130f7866def7532fa68823f34feefa
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is 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.7
|
Release files / PyQt5_sip-4.19.14-cp37-cp37m-macosx_10_6_intel.whl
| Download URL | PyQt5_sip-4.19.14-cp37-cp37m-macosx_10_6_intel.whl |
|---|---|
| Size | 52.0 kB |
| Tags | CPython 3.7 CPython 3.7 pymalloc macOS 10.6+ Intel (x86-64, i386) |
|
SHA-256 checksum How to use checksums |
6540b510f9436fe2d65801af55ecbf8c43bdda47294e994ed3851403a93e4a8b
|
|
BLAKE2b-256 checksum How to use checksums |
a87ba60c2fc8503e700943a5e2c84d6bb82741677f33facc67a6da4dc7c63d5e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is 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.7
|
Release files / PyQt5_sip-4.19.14-cp36-none-win_amd64.whl
| Download URL | PyQt5_sip-4.19.14-cp36-none-win_amd64.whl |
|---|---|
| Size | 52.0 kB |
| Tags | CPython 3.6 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
49b2151bd0a0e439efc9d4c22c33a048d8e8ede5c7296851c221fa0988887edb
|
|
BLAKE2b-256 checksum How to use checksums |
95a3ca246fb79815622c7f8e2da551b481e141435e03d58f83ed37e9e3c2dceb
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is 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.7
|
Release files / PyQt5_sip-4.19.14-cp36-none-win32.whl
| Download URL | PyQt5_sip-4.19.14-cp36-none-win32.whl |
|---|---|
| Size | 44.3 kB |
| Tags | CPython 3.6 Windows x86-32 |
|
SHA-256 checksum How to use checksums |
0b838ef8a55461785e78b4e347cf52ce228a5d4392c57e07cc46de51433dc8ac
|
|
BLAKE2b-256 checksum How to use checksums |
95b10ccc0542d8670494dfef15c1658f62066d256e489ee40c1bea87814da4f6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is 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.7
|
Release files / PyQt5_sip-4.19.14-cp36-cp36m-manylinux1_x86_64.whl
| Download URL | PyQt5_sip-4.19.14-cp36-cp36m-manylinux1_x86_64.whl |
|---|---|
| Size | 67.1 kB |
| Tags | CPython 3.6 CPython 3.6 pymalloc Linux glibc 2.5+ x86-64 |
|
SHA-256 checksum How to use checksums |
6b3063b12e700944172d57cdbeafb363229669af933f873d01c7a6d8a91c4c87
|
|
BLAKE2b-256 checksum How to use checksums |
94b5ee9e2f594e11e762c1a04529549b4a3264037861c01b073fbc992676066b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is 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.7
|
Release files / PyQt5_sip-4.19.14-cp36-cp36m-macosx_10_6_intel.whl
| Download URL | PyQt5_sip-4.19.14-cp36-cp36m-macosx_10_6_intel.whl |
|---|---|
| Size | 52.0 kB |
| Tags | CPython 3.6 CPython 3.6 pymalloc macOS 10.6+ Intel (x86-64, i386) |
|
SHA-256 checksum How to use checksums |
6d3013a6820ea614f46fdc73cc16dd57c36a0c74bcbd38bd0b9f2d46b6e6dd16
|
|
BLAKE2b-256 checksum How to use checksums |
ae51f4beda8b92e86dced117cf8242e7545f224756eb3778c10d5e0697d427b1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is 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.7
|
Release files / PyQt5_sip-4.19.14-cp35-none-win_amd64.whl
| Download URL | PyQt5_sip-4.19.14-cp35-none-win_amd64.whl |
|---|---|
| Size | 52.0 kB |
| Tags | CPython 3.5 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
bb81cfc4d35ca59f1c419b6abeb6ca6a726a63b712cf979f2b5ab24b81c36f49
|
|
BLAKE2b-256 checksum How to use checksums |
8700e0f1958dd1d61c0f21d20ec8a8d40d6943d5edd7378dd9a54b387c951f3d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is 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.7
|
Release files / PyQt5_sip-4.19.14-cp35-none-win32.whl
| Download URL | PyQt5_sip-4.19.14-cp35-none-win32.whl |
|---|---|
| Size | 44.3 kB |
| Tags | CPython 3.5 Windows x86-32 |
|
SHA-256 checksum How to use checksums |
84f7401afdd5f31e961de75e9c6b1610849e8883fbe0ed675bbb7d7d97286347
|
|
BLAKE2b-256 checksum How to use checksums |
1eae68d503d054454853f206c96a477ca4b6e99df61e9c53cad34e7a9f5fa9ad
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is 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.7
|
Release files / PyQt5_sip-4.19.14-cp35-cp35m-manylinux1_x86_64.whl
| Download URL | PyQt5_sip-4.19.14-cp35-cp35m-manylinux1_x86_64.whl |
|---|---|
| Size | 67.1 kB |
| Tags | CPython 3.5 CPython 3.5 pymalloc Linux glibc 2.5+ x86-64 |
|
SHA-256 checksum How to use checksums |
058d450c26be92193605f4628ff690d77080f599ffe381a1029cea8eeb71ab8e
|
|
BLAKE2b-256 checksum How to use checksums |
0ab0ae36db5015cae2215fc5f6ac95670f920901601c19f39fcf2e55ef0e8b9b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is 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.7
|
Release files / PyQt5_sip-4.19.14-cp35-cp35m-macosx_10_6_intel.whl
| Download URL | PyQt5_sip-4.19.14-cp35-cp35m-macosx_10_6_intel.whl |
|---|---|
| Size | 52.0 kB |
| Tags | CPython 3.5 CPython 3.5 pymalloc macOS 10.6+ Intel (x86-64, i386) |
|
SHA-256 checksum How to use checksums |
6ca796071b21761917ee486e57bfa2fc694580e65c462e4173cf849ed8fe201c
|
|
BLAKE2b-256 checksum How to use checksums |
5867c0848f0ca0282eeb1307c82e4cc1f7c3c135e5ac1763b8337cd1bbfeb0e8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is 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.7
|