C
プロジェクトの設定
このガイドでは、例として「example-baremetal 」というプラットフォームを使用し、移植の手順を説明します。この例を基にプラットフォームの移植版を作成することも、一から作成することも可能です。
Qt Quick Ultralite プラットフォーム移植プロジェクトの設定
Qt Quick Ultralite では、サポートされているすべてのプラットフォームが `platform\boards ` ディレクトリ下にあり、プラットフォームのメーカー名に基づいて分類されています。たとえば、example-baremetal プラットフォーム・ポートのメーカーは `qt` であり、このポートは `platform\boards\qt\example-baremetal` から確認できます。
変数BOARD_MANUFACTURER_NAME は CMake 内で自動的に設定され、ボードが検出されたメーカーフォルダの名前が含まれます。
Qt Quick UltraliteのCMakeスクリプトからプラットフォームを認識させるには、そのプラットフォーム用の新しいディレクトリを作成してください:
mkdir -p platform/boards/<MANUFACTURER_NAME>/<YOUR_PLATFORM>
md platform\boards\<MANUFACTURER_NAME>\<YOUR_PLATFORM>
なお、<MANUFACTURER_NAME> および<YOUR_PLATFORM> は、問題が発生しないよう小文字の名称にする必要があります。
注: 公式にサポートされているプラットフォーム名には「baremetal 」や「freertos 」などの接尾辞が付いていますが 、プラットフォーム名にこのようなOSの接尾辞を含めることは厳密な要件ではありません。
プロジェクト構造
Qt Quick Ultralite では特定のプロジェクト構造が必要となります。本ガイドに従って、その構造を作成してください。
- 📁 <MANUFACTURER_NAME>
- 🗎 CMakeLists.txt
- 📁 <YOUR_PLATFORM>
- 🗎 CMakeLists.txt
- 📁 cmake
- 📁 <YOUR_COMPILER>
- 🗎 <YOUR_LINKER_SCRIPT>
- 🗎 BoardArchitectureConfig.cmake
- 🗎 BoardDefaults.qmlprojectconfig
- 🗎 BSPConfig.cmake (オプション)
- 🗎 LinkerScriptConfig.cmake (オプション)
- 🗎 ExecutableHook.cmake (オプション)
- 📁 <YOUR_COMPILER>
上記のように、プラットフォームのデフォルト変数を定義する設定ファイルがいくつかあります:
BoardDefaults.qmlprojectconfigQt Quick には、ターゲットボード向けのUltraliteエンジン固有の設定が含まれています。BoardArchitectureConfig.cmakeプラットフォームのアーキテクチャに関する情報が含まれています。LinkerScriptConfig.cmakeリンカースクリプトの設定が含まれており、これについては後の章で説明します。- プラットフォーム固有のビルドシステム設定は、
CMakeLists.txt
メーカーの CMakeLists.txt
<MANUFACTURER_NAME> フォルダの下に、少なくとも以下の内容を含むCMakeLists.txt ファイルを追加してください:
include(CMakeDependentOption)
add_subdirectory(${CMAKE_CURRENT_LIST_DIR}/${QUL_PLATFORM})cmake ディレクトリ
Qt Quick Ultralite がプラットフォームを認識してコンパイルを行うには、プロジェクトにコンパイラおよびボード情報を含む `platform\<BOARD_MANUFACTURER_NAME>\<YOUR_PLATFORM>\cmake ` ディレクトリが必要です。platform\boards\qt\example-baremetal\cmake ディレクトリを、お使いのプラットフォームの `cmake` ディレクトリのベースとして使用できます。
cmake ディレクトリに必要なファイルは、上記のディレクトリ構造に示されています。
なお、example-baremetal プロジェクトのcmake ディレクトリには、ARM GCCコンパイラおよびIARコンパイラ用の設定が含まれています。ARM GCC、Green Hills for V850またはARM、あるいはIAR for ARMコンパイラ以外のコンパイラを使用する場合は、追加の設定が必要となります。詳細については、「カスタムツールチェーンの使用」を参照してください。
CPUアーキテクチャの設定
Qt Quick Ultralite には、サポートされている一連の CPU アーキテクチャが用意されています。その一覧は `platform/architecture/ ` 内にあり、最も一般的な Cortex-M アーキテクチャが含まれています。
デフォルトのアーキテクチャのいずれかを使用するには、次のように `<MANUFACTURER_NAME>/<YOUR_PLATFORM>/BoardArchitectureConfig.cmake ` を作成してください。
# Copyright (C) 2025 The Qt Company Ltd. # SPDX-License-Identifier: LicenseRef-Qt-Commercial set (QUL_PLATFORM_ARCHITECTURE "cortex-m7-hf-fpv5-d16")
それ以外の場合、カスタムアーキテクチャが必要な場合は、「カスタムアーキテクチャの使用」を参照し、<YOUR_COMPILER> フォルダ内に独自のアーキテクチャを作成する方法を確認してください。
set(QUL_PLATFORM_ARCHITECTURE SomeCustomName)
set(QUL_PLATFORM_ARCHITECTURE_FILE "${CMAKE_CURRENT_LIST_DIR}/${QUL_COMPILER_NAME}/architecture.cmake")特定のQtライセンス下で利用可能です。
詳細はこちら。