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

Uploaded CPython 3.6 Windows x86-64

sip-4.19.3-cp36-none-win32.whl (41.2 kB view details)

Uploaded CPython 3.6 Windows x86

sip-4.19.3-cp36-cp36m-manylinux1_x86_64.whl (63.8 kB view details)

Uploaded CPython 3.6m

sip-4.19.3-cp36-cp36m-macosx_10_6_intel.whl (49.1 kB view details)

Uploaded CPython 3.6m macOS 10.6+ intel

sip-4.19.3-cp35-none-win_amd64.whl (49.7 kB view details)

Uploaded CPython 3.5 Windows x86-64

sip-4.19.3-cp35-none-win32.whl (41.2 kB view details)

Uploaded CPython 3.5 Windows x86

sip-4.19.3-cp35-cp35m-manylinux1_x86_64.whl (63.8 kB view details)

Uploaded CPython 3.5m

sip-4.19.3-cp35-cp35m-macosx_10_6_intel.whl (49.1 kB view details)

Uploaded CPython 3.5m macOS 10.6+ intel

File details

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

File metadata

File hashes

Hashes for sip-4.19.3-cp36-none-win_amd64.whl
Algorithm Hash digest
SHA256 41aedd7b7a08a7c4ef337691bc22250af2f2364b1882898f3f2b71525849f898
MD5 34cd2a3119021d34dfd74aaf0fa59094
BLAKE2b-256 9981f5af0765837bb29cc55c73a85119101e80e0dcd5a6df867fd3ba41a00f8f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for sip-4.19.3-cp36-none-win32.whl
Algorithm Hash digest
SHA256 9404cbb0d89c2203edea200ce23aeea13fe80ff0c5cf307089f3d7dea0e870c5
MD5 446cacfa4d0eda397f3de0f18b25647e
BLAKE2b-256 32372b6ba5fba27510bf5e8431c9473e3627c2fdfca66da0ecf365968d929d2a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for sip-4.19.3-cp36-cp36m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 22aa287affe996ca6b4aced678614cd355b26e4a83fd2d9950ea354b9d9e4b09
MD5 7e0f95c59ec38e0de1017da88b2c6d09
BLAKE2b-256 017059ed0ffc69e0adb40d900c4ad20b09b78dcf2b8ed5d9ebac4d9c66304130

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for sip-4.19.3-cp36-cp36m-macosx_10_6_intel.whl
Algorithm Hash digest
SHA256 dc7aab5ac82813959bd030f87bea4f3eebef530026472c88670dca5c65ed3d6f
MD5 ec37fa1809a3fb5a8651bb35f2bad9ae
BLAKE2b-256 e4b6707fb3cfa76e6f566270b296ed079b0c91c9270047d42daad2d21d56bcc0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for sip-4.19.3-cp35-none-win_amd64.whl
Algorithm Hash digest
SHA256 46a1d10e43b54f96a467290ece436a2a62010f6b35e419f24cea470350ed0f14
MD5 628cb0543071509330b36fc8ac62ca6e
BLAKE2b-256 bef404f2fac0491f4fe25371ece16f1de71174f8de1757a2906937e5c475d652

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for sip-4.19.3-cp35-none-win32.whl
Algorithm Hash digest
SHA256 5e825a811b035e9aed86a06d330ee8896222981327bc7846135f422db929584c
MD5 f04c75f318ce57de9a2ca7a62d58799b
BLAKE2b-256 a5e1729644723f5b70d7103644bb9c56a18c2a899d7016c5b6790e0b3878564b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for sip-4.19.3-cp35-cp35m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 41077431be4c4b1bde0db19ca022ffbf4a4ef62593482694be3565eadae33c92
MD5 c1201823946e61c09c4113dee1f3e188
BLAKE2b-256 e5d3909f9971037c79bbd0c8a59bf8ba2b5359bf1384a1a8973daff838388af6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for sip-4.19.3-cp35-cp35m-macosx_10_6_intel.whl
Algorithm Hash digest
SHA256 e66ef947cd8b8c5a13b9ef04981a78a98805e60ed9618e10a3cce0ff696ca0d0
MD5 b3208c2700f62159863290d7128e60cb
BLAKE2b-256 5fc5bd89e89e17f90f931fc0420dfa44603aa6a6d113fd9b0d7a415df0d2586f

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