Typesystem

Qt for Python: 舞台裏

Published Saturday September 22nd, 2018 | Leave a comment
Posted in Qt for Python | Tags: , , ,

この記事は The Qt Blog の Qt for Python: under the hood を翻訳したものです。 執筆: Cristián, 2018年05月24日 本日は、「Qt for Python バインディング」の生成プロセスについて紹介したいと思います。 以下の図は The Qt Company が PySide2 モジュールを提供する際の一般的なプロセスを示しています。 PySide プロジェクトが 2009 年に立ち上がった際に当時のチームは Qt の C++ のヘッダファイルから Python のバインディングを生成するのに外部のツールを使用することを決断しました。 すべての Qt の C++ の機能に対応できるという条件は当然として、最終的なパッケージの大きさに強い感心がありました。 以前のものはテンプレートを多用していたため、別のものが必要になりました。 いくつかの選択肢を検討した結果、そのチームは自分たちで Shiboken と呼ばれるジェネレーターを書くことにしました。 Shiboken は(QtScriptGenerator という昔のプロジェクトを元に作られた)ApiExtractor というライブラリを使用し、Clang を用いて Qt のヘッダファイルをパースして Qt のクラスの情報を取得します。 このステップは […]

Read More
Get started today with Qt Download now