C
Qt Quick Ultralite 平台导出工具
自 Qt for MCUs 2.8 版本以来,平台导出工具中移除了一些功能。此工具不应再直接由客户使用。请改用 qmlprojectexporter。
以下表格显示了哪些平台导出工具选项转换为 qmlprojectexporter 选项。
platformExporter | qmprojectexporter |
---|---|
--builddir | --qul-build-dir |
--outputformat | --project-type |
--sdkdir | --board-sdk |
--includeIDEgeneratedHWCode | --include-ide-generated-hw-code |
--IDEsourcesdir | --ide-sources-outdir |
--outdir | --platform-outdir |
使用 qmlprojectexporter 导出平台的示例
qmlprojectexporter --platform <platform> --toolchain <toolchain> --no-export-qml --qul-source-dir <QulDir> --qul-build-dir <BuildDir> --project-type <type> --board-sdk <boardSdk> --platform-outdir <exportDir> --include-ide-generated-hw-code --ide-sources-outdir <outdir_for_3rdparty_sources>
将 Qt for MCUs 集成到您的项目中
这是一个示例 main.cpp
,展示将导出的 UI 和平台源代码集成到您项目中所需的代码。
#include "minimal.h" #include <qul/application.h> #include <qul/qul.h> int main() { Qul::initHardware(); Qul::initPlatform(); Qul::Application _qul_app; static struct ::minimal _qul_item; _qul_app.setRootItem(&_qul_item); #ifdef APP_DEFAULT_UILANGUAGE _qul_app.setUiLanguage(APP_DEFAULT_UILANGUAGE); #endif _qul_app.exec(); return 0; }
IDE 设置
按照以下步骤将导出的源代码集成到第三方 IDE 或构建系统。对于使用 CMake 或 GHS Multi IDE 的项目,它们直接得到支持。
对于任何其他 IDE,请按照以下步骤手动操作。
- 将导出的平台和应用程序源代码添加到 IDE 中的项目。
- 将汇编源代码添加到您项目中的源代码列表。向 qmlprojectexporter 传递
--toolchain GNU
可生成资源的二进制文件(incbin)。在这种情况下,需要将qul_font_files_loader.S
和qul_assets.S
添加到源代码中。此选项仅适用于 GNU GCC 编译器。对于其他编译器,资源将作为 C++ 数组生成。 - 添加包含引脚复用、时钟配置和硬件初始化代码的板级文件。
您可以通过以下任一选项添加这些文件
- 可以使用 MCU 供应商工具(如 STM32 CubeMX 或 NXP MCUXPresso 配置工具)生成自定义板级文件。
- 使用平台导出工具,结合--include-ide-generated-hw-code选项来导出Qt为MCU提供的参考板文件。您还可以使用--ide-sources-outdir <folderpath>选项来指定目标目录。
例如:
<QUL_DIR>/bin/qmlprojectexporter.exe \ --platform-metadata <BUILD_DIR>/lib/QulPlatformTargets_<PLATFORM_NAME>-export.json \ --project-type cmake \ --no-export-qml \ --outdir <DESTINATION_FOLDER> \ --platform-build-dir <BUILD_DIR> \ --include-ide-generated-hw-code \ --ide-sources-outdir <IDE_PROJECT_ROOT_DIR>/board
- 添加包含路径、预定义和工具链标志。
文件<PLATFORM_EXPORT_DIR>/IDE-Import-Instructions.txt列出了项目的所有所需编译器和链接器设置。这包括架构标志、包含路径和用于工具链的预处理器定义。
- 在项目的链接器设置中添加导出的链接脚本路径。
Qt Quick Ultralite应用程序的链接器脚本需要为资源数据和缓存定义自定义部分。平台导出工具导出的链接脚本可以直接在IDE中使用。
对于ARMGCC:<QUL_EXPORT_FOLDER>/platform/boards/nxp/<board>/cmake/armgcc/<linker_file>.ld;对于IAR:<QUL_EXPORT_FOLDER>/platform/boards/nxp/<board>/cmake/iar/<linker_file>.icf
- 将以下预构建的Qt Quick Ultralite库添加到链接器设置
- <BUILD_DIR>/libQulCore_<ARCHITECTURE>-<COMPILER>-<BUILD_TYPE>.a
- <BUILD_DIR>/libQulControls_<ARCHITECTURE>-<COMPILER>-<BUILD_TYPE>.a
- <BUILD_DIR>/libQulPNGDecoderLodePNG_<ARCHITECTURE>-<COMPILER>-<BUILD_TYPE>.a
- <BUILD_DIR>/libQulPNGDecoderNull_<ARCHITECTURE>-<COMPILER>-<BUILD_TYPE>.a
- <BUILD_DIR>/libQulShapes_<ARCHITECTURE>-<COMPILER>-<BUILD_TYPE>.a
- <BUILD_DIR>/libQulControlsTemplates_<ARCHITECTURE>-<COMPILER>-<BUILD_TYPE>.a
- <BUILD_DIR>/libQulTimeline_<ARCHITECTURE>-<COMPILER>-<BUILD_TYPE>.a
- <BUILD_DIR>/libQulMonotypeUnicodeEngineShaperDisabled_<ARCHITECTURE>-<COMPILER>-<BUILD_TYPE>.a
- <BUILD_DIR>/libQulMonotypeUnicode_<ARCHITECTURE>-<COMPILER>-<BUILD_TYPE>.a
更多信息
QUL_STD_STRING_SUPPORT CMake选项
如果核心库是在安装QUL_STD_STRING_SUPPORT CMake选项的情况下构建的,则配置项目时需要使用架构的QUL_STD_STRING_SUPPORT CMake选项。否则应用程序会崩溃。
在特定的Qt许可证下提供。
了解更多信息。