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

Uploaded CPython 3.6 Windows x86-64

sip-4.19.4-cp36-none-win32.whl (42.6 kB view details)

Uploaded CPython 3.6 Windows x86

sip-4.19.4-cp36-cp36m-manylinux1_x86_64.whl (66.3 kB view details)

Uploaded CPython 3.6m

sip-4.19.4-cp36-cp36m-macosx_10_6_intel.whl (50.9 kB view details)

Uploaded CPython 3.6m macOS 10.6+ intel

sip-4.19.4-cp35-none-win_amd64.whl (51.2 kB view details)

Uploaded CPython 3.5 Windows x86-64

sip-4.19.4-cp35-none-win32.whl (42.6 kB view details)

Uploaded CPython 3.5 Windows x86

sip-4.19.4-cp35-cp35m-manylinux1_x86_64.whl (66.3 kB view details)

Uploaded CPython 3.5m

sip-4.19.4-cp35-cp35m-macosx_10_6_intel.whl (50.9 kB view details)

Uploaded CPython 3.5m macOS 10.6+ intel

File details

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

File metadata

File hashes

Hashes for sip-4.19.4-cp36-none-win_amd64.whl
Algorithm Hash digest
SHA256 842054b73b96fc5994149ce3c5e5a99f224a4f224df8bf5a677828027e95f4a6
MD5 6998827ea55293cacd7e4a4fcebbe3b7
BLAKE2b-256 41b53b51a12f62f5dc0073bfb9b92d76c19eecd9385813847936198f04780f71

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for sip-4.19.4-cp36-none-win32.whl
Algorithm Hash digest
SHA256 5177be09bdcfe1d606fd3cb18a3bfefc82e917ee43296c7707bd6230a67a1b74
MD5 dc2ecb9316df529697c10070fc2c4f19
BLAKE2b-256 ae7ed1e76678963bb288773d6857e6c5ad7f5bb1d88b4762494f0e83674961df

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for sip-4.19.4-cp36-cp36m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 d503425b744f34ec01fdeab96de7016f739d01698e0b25618f1528697fbfb513
MD5 39b769f91d93c604f6e5d895aa590792
BLAKE2b-256 f54d2114e910313aba671c184a9b29f0098db8b0d97b525161d3fa1c62fc78c9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for sip-4.19.4-cp36-cp36m-macosx_10_6_intel.whl
Algorithm Hash digest
SHA256 085b10224b2ffd781d0a5dfb2bab6a8b6593726fb845c3495d941daeffa0cec1
MD5 79b802c3c707fb531dec9fa1ef51fa21
BLAKE2b-256 bbc43d1a98c2d73c9ce03a7faa62faf6a4b0cc3a54746e2f5906b96e1d8d2342

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for sip-4.19.4-cp35-none-win_amd64.whl
Algorithm Hash digest
SHA256 5a4729c7128a27d7660e6b4850c7c2cc1b806ba1789a0a4546fbbc8d7640100f
MD5 8274131dc3ddeaef9691d76fbdc7cf8c
BLAKE2b-256 fd48ba9109db0a41e95944366c759e112b383d99c4412f200aec5c62aaf30956

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for sip-4.19.4-cp35-none-win32.whl
Algorithm Hash digest
SHA256 db41e3045dec553b2abed9efd8e2ce425f5e95e4d14ba0c0da3c0afdfa8152e0
MD5 15951106001dc18aa0244680735d24c8
BLAKE2b-256 3119bd6f4ee9ac780890e5ea1b442ef507990ddc700ed3991c9c49b9b119e57a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for sip-4.19.4-cp35-cp35m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 77e4f03a024386fe51c9739f08098670d47c9897ee39e76d259d1d262afdfa27
MD5 d549f8e6dd5002838a191d6cb4a13c7f
BLAKE2b-256 200cd0548f0f0bbe2a24f0efef726212d3ba232b2e8a5ee11c3ae5674304fb02

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for sip-4.19.4-cp35-cp35m-macosx_10_6_intel.whl
Algorithm Hash digest
SHA256 0db6ad736f51576b178fb7ce9f486c20c83b356aba7f344ac14c2cd9e8c86e98
MD5 f1b507178e28e4b79d2085ca24c3d8c9
BLAKE2b-256 2db8b8684d4240b4e2c6e228109753aca1d6387da00df19cb41ec667e357669f

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