C
CMakeを始める
CMakeLists.txtファイルは、常にcmake_minimum_required とproject というコマンドで始まる必要があります。現在のところ、Qt Quick Ultraliteは、最小バージョンがv3.21.1であることを期待していますが、プロジェクトが最新のCMake機能に依存している場合は、より高いバージョンに設定することができます。project コマンドは、name とプロジェクトで使用するプログラミング言語のリストを定義します。Qt Quick Ultraliteは言語リストにC とCXX (C++)を想定していますが、サポートされているプラットフォームやGNUコンパイラによってはASM (アセンブリ)も必要です。言語のリストが長くても害はないので、3つの言語すべてをリストに含めるのがベストプラクティスです。
一般的なCMake設定の後、find_package を使用して、Qt Quick Ultraliteに同梱されているライブラリとヘッダーファイルを検索します。qul_add_target コマンドを使って、これらのライブラリーとヘッダーファイルを使ってQt Quick Ultralite ベースのアプリケーションをビルドすることができます。このコマンドは、適切なインクルード・ディレクトリ、コンパイル定義、およびライブラリを自動的に追加します。
cmake_minimum_required (VERSION 3.21.1) project(example_project LANGUAGE C CXX ASM) find_package(Qul) qul_add_target(example)
次にソースファイルを追加します。qul_target_qml_sourcesコマンドを使用してQMLソースファイルを追加し、qul_target_generate_interfacesコマンドを使用してエクスポートされたクラスを定義するC++ファイルを追加します。ビルド中にQMLソースはC++に変換され、コンパイルされます。インターフェイスヘッダーに記述されたエクスポートされた型の説明は、QMLコードで利用できるようになります。詳しくはC++コードとQMLの統合を参照してください。
target_sources(example PRIVATE example.cpp) qul_target_qml_sources(example ExampleView.qml) qul_target_generate_interfaces(example example.h)
アプリケーションを翻訳したい場合は、qul_target_embed_translationsを使って翻訳をセットアップします。これは、QMLソース中の翻訳された文字列に基づいて、リストされた.ts ファイルを生成・更新するためのupdate_translations ターゲットを作成し、それらの翻訳をバイナリに埋め込みます。詳しくは Qt Quick Ultraliteによる国際化とローカライズを参照してください。
qul_target_embed_translations(example translation.nb_NO.ts translation.lv_LV.ts)
最後に、app_target_setup_osを使用して、QUL_OS変数の値に応じてOSの追加セットアップを行います。このコマンドは適切なプラットフォーム・ライブラリをリンクし、FreeRTOS ソースのコンパイルやリンクなどの追加アクションを実行します。
set(QUL_OS "baremetal") app_target_setup_os(example)
CMakeLists.txt ファイルと、ビルドするプラットフォームを選択するコマンド行オプショ ンのあるディレクトリでcmake を実行して、プロジェクトをビルドします。例えば、STM32F769I-Discovery ボード用にビルドするには、次のようにします:
cmake <source_directory>
-DCMAKE_TOOLCHAIN_FILE=<qul_directory>/lib/cmake/Qul/toolchain/armgcc.cmake
-DQUL_PLATFORM=STM32F769I-DISCOVERY-baremetalCMAKE_TOOLCHAIN_FILE 変数を使用してarmgcc ツールチェインに切り替え、QUL_PLATFORM変数でビルドするボードを決定します。
注: Qt Quick Ultralite プロジェクトでは、CMAKE_BUILD_TYPE はデフォルトでMinSizeRel に設定されています。MinSizeRel は、Qt Quick Ultralite に同梱されているビルド済みプラットフォーム・ライブラリに使用されるビルド・タイプです。ビルドタイプを変更するには(例えばRelease に)、-DCMAKE_BUILD_TYPE=Release オプションを付けて CMake を起動します。詳細については、CMAKE_BUILD_TYPEを参照してください。
特定の Qt ライセンスの下で利用可能です。
詳細はこちら。