dbo:abstract |
SIP is an open source software tool used to connect computer programs or libraries written in C or C++ with the scripting language Python. It is an alternative to SWIG. SIP was originally developed in 1998 for PyQt — the Python bindings for the Qt GUI toolkit — but is suitable for generating bindings for any C or C++ library. (en) |
dbo:license |
dbr:GPL |
dbo:programmingLanguage |
dbr:C++ dbr:C_(programming_language) |
dbo:wikiPageID |
32444509 (xsd:integer) |
dbo:wikiPageLength |
3268 (xsd:nonNegativeInteger) |
dbo:wikiPageRevisionID |
1053276005 (xsd:integer) |
dbo:wikiPageWikiLink |
dbr:Calibre_(software) dbr:PyQt dbr:Python_(programming_language) dbr:QGIS dbr:QtiPlot dbr:Veusz dbr:Library_(computing) dbr:Qt_(framework) dbc:Programming_tools dbr:SWIG dbr:GNU_Compiler_Collection dbr:GPL dbr:Computer_program dbr:C++ dbr:C_(programming_language) dbc:Free_computer_programming_tools dbr:API dbc:Scripting_languages dbr:Open_source_software dbr:Scripting_language |
dbp:author |
Phil Thompson (en) |
dbp:license |
GPL and other (en) |
dbp:name |
SIP (en) |
dbp:programmingLanguage |
dbr:C++ dbr:C_(programming_language) |
dbp:text |
For PyQt v4 I use an internal tool called . This is sort of an IDE for SIP. It uses GCC-XML to parse the latest header files and saves the relevant data, as XML, in a project. then does the equivalent of a diff against the previous version of the API and flags up any changes that need to be looked at. Those changes are then made through the GUI and ticked off the TODO list. Generating the files is just a button click. In my subversion repository, PyQt v4 is basically just a 20M XML file. Updating PyQt v4 for a minor release of Qt v4 is about half an hours work. In terms of how the generated code works then I don't think it's very different from how any other bindings generator works. Python has a very good C API for writing extension modules - it's one of the reasons why so many 3rd party tools have Python bindings. For every C++ class, the SIP generated code creates a corresponding Python class implemented in C. (en) |
dbp:title |
developer and maintainer (en) |
dbp:wikiPageUsesTemplate |
dbt:Blockquote dbt:Infobox_software dbt:Not_a_typo dbt:Reflist dbt:URL |
dct:subject |
dbc:Programming_tools dbc:Free_computer_programming_tools dbc:Scripting_languages |
gold:hypernym |
dbr:Tool |
rdf:type |
owl:Thing dbo:Software schema:CreativeWork dbo:Work wikidata:Q386724 wikidata:Q7397 yago:WikicatScriptingLanguages yago:Abstraction100002137 yago:Code106355894 yago:CodingSystem106353757 yago:Communication100033020 yago:Language106282651 yago:Writing106359877 yago:WrittenCommunication106349220 yago:Software106566077 |
rdfs:comment |
SIP is an open source software tool used to connect computer programs or libraries written in C or C++ with the scripting language Python. It is an alternative to SWIG. SIP was originally developed in 1998 for PyQt — the Python bindings for the Qt GUI toolkit — but is suitable for generating bindings for any C or C++ library. (en) |
rdfs:label |
SIP (software) (en) |
owl:sameAs |
freebase:SIP (software) yago-res:SIP (software) wikidata:SIP (software) https://global.dbpedia.org/id/4uy18 |
prov:wasDerivedFrom |
wikipedia-en:SIP_(software)?oldid=1053276005&ns=0 |
foaf:isPrimaryTopicOf |
wikipedia-en:SIP_(software) |
foaf:name |
SIP (en) |
is dbo:programmingLanguage of |
dbr:Viber |
is dbo:wikiPageDisambiguates of |
dbr:SIP |
is dbo:wikiPageWikiLink of |
dbr:PyQt dbr:Unify_(company) dbr:Viber dbr:SWIG dbr:SIP |
is foaf:primaryTopic of |
wikipedia-en:SIP_(software) |