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 and 64-bit OS X modules 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.18-cp35-none-win_amd64.whl (46.9 kB view details)

Uploaded CPython 3.5 Windows x86-64

sip-4.18-cp35-none-win32.whl (39.1 kB view details)

Uploaded CPython 3.5 Windows x86

sip-4.18-cp35-cp35m-manylinux1_x86_64.whl (61.0 kB view details)

Uploaded CPython 3.5m

sip-4.18-cp35-cp35m-macosx_10_6_intel.whl (46.2 kB view details)

Uploaded CPython 3.5m macOS 10.6+ intel

File details

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

File metadata

File hashes

Hashes for sip-4.18-cp35-none-win_amd64.whl
Algorithm Hash digest
SHA256 483020055fafef260fdf475d2f61148e8572c5cc09f62c04550bbed4fb0a0c1b
MD5 ab8228070b3a8e549b309013e5b199d9
BLAKE2b-256 7bd07c9a7b69d1504c27e65b1efb053966f3b232e9071bb99ecc447232319f98

See more details on using hashes here.

File details

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

File metadata

  • Download URL: sip-4.18-cp35-none-win32.whl
  • Upload date:
  • Size: 39.1 kB
  • Tags: CPython 3.5, Windows x86
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for sip-4.18-cp35-none-win32.whl
Algorithm Hash digest
SHA256 e6f523c0262a9f13ed48153f47c24e24bc8609fa86c9e808e59ad2f55c65cb3c
MD5 c9a109d5d51ba794bbd80fc305110d79
BLAKE2b-256 4246fc1c06fac246ffabc80f7f5de4a73be027112628c31594bee314954bd414

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for sip-4.18-cp35-cp35m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 a1c7c6b037e455ceb8af2b585277c69d218fb4e69f97c913feecfb1ec9f01919
MD5 bb00e5761cb5c96f53df8eda0790386e
BLAKE2b-256 56a5974eb9e9224eb21437f59733ca8e695cbb6507a510cd283cb664cf1ab9d7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for sip-4.18-cp35-cp35m-macosx_10_6_intel.whl
Algorithm Hash digest
SHA256 7c2f989215cfa01e84e8d496f290d39ca9cabc0694a2558cbedb0db7f37355c4
MD5 d8baf3685f55d490073a078ef62c179b
BLAKE2b-256 d4b93f506d00561be860919688aa917fcf8d18ba39a7c8ad85deddfb4a346c51

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