SDK 工具
Qt 网络安装程序使用 SDK 工具(sdktool
)来配置 CMake 并设置 套件 首选项,例如编译器、调试器、设备和 Qt 版本。您可以使用它从命令行为计算机上的所有用户自动设置 Qt 和 Qt Creator 首选项。对于单个用户,通常在 偏好设置 > 套件 中进行更改要容易一些。
要使用 SDK 工具,请进入 Qt 安装目录中的 Tools\sdktool\bin
目录下的以下命令
sdktool [OPTION] [OPERATION [OPTIONS]]
要了解支持的功能和操作选项,请输入
sdktool --help
值类型
这些操作以 <KEY> <TYPE>:<VALUE>
的形式将设置添加到它们创建的配置中。支持的 TYPE
值包括:
bool
int
- QByteArray
- QString
- QVariantList
SDK 路径
Qt 网络安装程序和 Qt Creator 独立安装程序都安装了 sdktool
。安装程序中的 sdktool
默认指向 Qt Creator 从安装程序读取 SDK 工具写入的信息的位置。要将 sdktool
指向其他 Qt Creator 安装,请根据您是否使用 Qt 网络安装程序或脱机安装程序设置 --sdkpath
。
- Qt 网络安装程序:
<Qt_Online_Installer>/Tools/sdktool
- Qt Creator 独立安装程序
- 在 Windows 和 Linux 上:
<qtcreator>/share/qtcreator/
- 在 macOS 上
Qt Creator.app/Contents/Resources/
- 在 Windows 和 Linux 上:
选项
以下表格总结了一些可用的选项。
选项 | 描述 |
---|---|
--help | -h | 显示 SDK 工具选项的帮助信息。 输入 |
--sdkpath=<PATH> | -s <PATH> | 设置 SDK 工具写入文件的路径。 |
操作
以下表格总结了一些可用的操作。
操作 | 描述 |
---|---|
addAbiFlavor | 添加系统架构(ABI)。 |
addCMake | 添加 CMake 工具的路径。 |
addDebugger | 添加调试器。 |
addDev | 添加设备。 |
addKeys | 将设置添加为<KEY> <TYPE>:<VALUE> 形式的键值对。 |
addKit | 添加一个构建和运行套件。 |
addQt | 添加一个Qt版本。 |
addTC | 添加一个编译器。 |
find | 查找设置值。 |
findKey | 查找设置键。 |
get | 获取设置。 |
rmCMake | 移除CMake工具的路径。 |
rmDebugger | 移除调试器。 |
rmDev | 移除设备。 |
rmKeys | 移除设置。 |
rmQt | 移除Qt版本。 |
rmTC | 移除编译器。 |
添加系统架构(ABI)
addAbiFlavor
sdktool addAbiFlavor --flavor <NAME> --oses <OS>(,<OS>)*
addAbiFlavor 选项
以下表格总结了一些可用的选项。
选项 | 描述 | 必填 |
---|---|---|
--flavor <NAME> | 系统架构(ABI)的名称。 | |
--oses <OS>(,<OS>)* | ABI适用的操作系统。 |
ABI Flavor 示例
要在Linux上添加 Yocto Poky,请输入
./sdktool addAbiFlavor \ --flavor poky \ --oses linux
添加CMake工具
addCMake
sdktool addCMake --id <ID> --name <NAME> --path <PATH> [<KEY> <TYPE:VALUE>]
addCMake 选项
以下表格总结了一些可用的选项。
选项 | 描述 | 必填 |
---|---|---|
--id <ID> | CMake安装的ID。可以是任何ASCII(7位)字符串。 如果您在字符串中不使用版本号,则注册的CMake在更新此CMake安装时保持ID,因此所有套件将自动更新以使用新版本。 | |
--name <NAME> | CMake安装的名称。 | |
--path <PATH> | CMake可执行文件的路径。 | |
<KEY> <TYPE:VALUE> | 额外的键值对形式的设置。 |
更多信息,请参阅添加CMake工具。
CMake配置示例
要在Windows上添加CMake工具,请输入
sdktool addCMake \ --id "my.custom.cmake" \ --name "Custom CMake" \ --path "C:\Program Files\CMake-3.30\bin\cmake.exe"
添加编译器
addTC
sdktool addTC --id <ID> --language <ID> --name <NAME> --path <PATH> --abi <ABI STRING> [OPTIONS]
addTC 选项
以下表格总结了一些可用的选项。
选项 | 描述 | 必填 |
---|---|---|
--abi <ABI STRING> | 编译器的ABI,其格式可由 ProjectExplorer::Abi::fromString() 解析。 | |
--id <ID> | 格式为 ToolChainType:some_unique_part 的工具链ID,其中工具链类型可以是以下之一,或者插件提供的其他内容
请检查从
| |
--language <ID> | 工具链输入语言的ID:C 或 Cxx 。 | |
--name <NAME> | 工具链名称。 | |
--path <PATH> | 编译器可执行文件的路径。 | |
--supportedAbis <ABI STRING>,<ABI STRING> | 编译器支持的ABI列表。 | |
<KEY> <TYPE:VALUE> | 额外的键值对形式的设置。 |
更多信息,请参阅添加编译器。
编译器示例
在Linux上添加GCC编译器,请输入
./sdktool addTC \ --id "ProjectExplorer.ToolChain.Gcc:company.product.toolchain.g++" \ --language Cxx --name "GCC (C++, x86_64)" \ --path /home/code/build/gcc-6.3/usr/bin/g++ \ --abi x86-linux-generic-elf-64bit \ --supportedAbis x86-linux-generic-elf-64bit,x86-linux-generic-elf-32bit \ ADDITIONAL_INTEGER_PARAMETER int:42 \ ADDITIONAL_STRING_PARAMETER "QString:some string" \
添加调试器
addDebugger
sdktool addDebugger --id <ID> --name <NAME> [OPTIONS]
addDebugger 选项
以下表格总结了一些可用的选项。
选项 | 描述 | 必填 |
---|---|---|
--abis <ABI,ABI> | 由逗号分隔的系统架构定义列表。 | |
--binary <PATH> | 调试器可执行文件的路径。可以是绝对路径,值为 auto 或 ABI。当 Qt Creator 不了解二进制路径时,查找 MSVC 工具链中的适当调试器。 | |
--engine <ENGINE> | 调试器引擎类型
| |
--id <ID> | 调试器的唯一 ID。 | |
--name <NAME> | 调试器的名称。 | |
<KEY> <TYPE:VALUE> | 额外的键值对形式的设置。 |
有关更多信息,请参阅 添加调试器。
调试器示例
在Linux上添加GDB调试器,请输入
./sdktool addDebugger \ --id "company.product.toolchain.gdb" \ --name "GDB (company, product)" \ --engine 1 \ --binary /home/code/build/gdb-7.12/bin/gdb \ --abis arm-linux-generic-elf-32 \
添加设备
addDev
sdktool addDev --id <ID> --name <NAME> --type <INT> [OPTIONS]
addDev 选项
下表总结了可用的选项。使用的选项取决于设备类型。
选项 | 描述 | 必填 |
---|---|---|
--authentication <INT> | 认证方法
| |
--b2qHardware <STRING> | 关于硬件的 Qt 平台引导信息。 | |
--b2qSoftware <STRING> | 关于软件的 Qt 平台引导信息。 | |
--debugServerKey <STRING> | 调试服务器密钥。 | |
--dockerClangdExecutable <STRING> | Docker 容器中 Clangd 可执行文件的路径。 | |
--dockerMappedPaths <STRING> | 由分号分隔的 Docker 映射路径列表。 | |
--dockerRepo <STRING> | Docker 镜像仓库。 | |
--dockerTag <STRING> | Docker 镜像标签。 | |
--freePorts <STRING> | 可用端口。 | |
--host <STRING> | 设备的计算机名或 IP 地址。 | |
--id <ID> | 设备的唯一 ID。 | |
--keyFile <STRING> | 用户私钥文件的路径。 | |
--name <NAME> | 设备的名称。 | |
--origin <INT> | 设备是否自动检测到
| |
--osType <STRING> | 设备上的操作系统
| |
--password <STRING> | 密码认证的密码。 | |
--sshPort <INT> | SSH 连接的端口号。 | |
--timeout <INT> | 重用 SSH 连接的超时时间(秒)。 | |
--type <INT> | 设备类型
| |
--uname <STRING> | 访问设备的用户名。 | |
<KEY> <TYPE:VALUE> | 额外的键值对形式的设置。 |
有关更多信息,请参阅 如何在设备上开发。
Linux 设备示例
要添加远程 Linux 设备(硬件设备)并在 Linux 上使用 SSH 密钥对设备进行认证,请输入
./sdktool addDev \ --id " LinuxDevice1" \ --name "My Remote Linux Device" \ --type 1 \ --authentication 2 \ --freePorts "10000-10100" \ --host "10.10.10.15" \ --keyFile "/usr/.ssh/qtc_id" \ --origin 1 \ --osType "GenericLinuxOsType" \ --sshPort 22 \ --timeout 10 \ --uname "root"
添加 Qt 版本
addQt
sdktool addQt --id <ID> --name <NAME> --qmake <PATH> --type <TYPE> [OPTIONS]
addQt 选项
以下表格总结了一些可用的选项。
选项 | 描述 | 必填 |
---|---|---|
--abis <ABI,ABI> | 由逗号分隔的系统架构定义列表。 | |
--id <ID> | Qt 安装的 ID。当 Qt Creator 检测到计算机上安装的 Qt 版本时,自动设置 ID。 | |
--name <NAME> | Qt 安装的名称。 | |
--qmake <PATH> | Qt 安装中 qmake 可执行文件的路径。 | |
--type <TYPE> | Qt 版本的类型
由 | |
<KEY> <TYPE:VALUE> | 额外的键值对形式的设置。 |
更多信息,请参阅 添加Qt版本。
Qt版本示例
要在Linux上添加自建的Qt 6.8版本,请输入
./sdktool addQt \ --id "company.product.qt" \ --name "Custom Qt" \ --qmake /home/code/build/qt-6.8/bin/qmake \ --type Qt4ProjectManager.QtVersion.Desktop \
添加工具条
addKit
sdktool addKit --id <ID> --name <NAME> --devicetype <TYPE> [OPTIONS]
addKit选项
以下表格总结了一些可用的选项。
选项 | 描述 | 必填 |
---|---|---|
--builddevice <ID> | 构建应用程序的设备ID。 | |
--cmake <ID> | 用于构建项目的CMake可执行文件的ID。 | |
--cmake-config <KEY:TYPE=VALUE> | 工具条CMake配置的参数。您可以添加多个此类条目。 | |
--cmake-generator <GEN>:<EXTRA>:<TOOLSET>:<PLATFORM> | 用于生成项目文件的CMake生成器。 | |
--debugger <PATH> | 用于工具条的调试器路径。不要与 --debuggerid 一起使用。 | |
--debuggerengine <ENGINE> | 与 --debugger 一起设置的调试器的类型。不要与 --debuggerid 一起使用。 | |
--debuggerid <ID> | 使用 addDebugger 操作添加调试器时所用ID之一。不要与 --debugger 和 --debuggerengine 一起使用。 | |
--device <ID> | 在运行应用程序的设备上。 | |
--devicetype <TYPE> | 运行应用程序的设备类型
由 | |
--env <VALUE> | 构建环境的环境变量值。您可以添加多个此类条目。 | |
--icon <PATH> | 用作工具条图标的图像路径。 | |
--id <ID> | 工具条ID。Qt Creator在检测到计算机上安装的Qt版本时会自动设置ID。 | |
--<LANG>toolchain <ID> | 使用 addTC 操作添加编译器时所用ID之一。<LANG> 是: C 、Cxx 、Nim 或插件设置的某些内容。 | |
--mkspec <PATH> | qmake使用的 mkspec 配置。省略此选项以使用指定的Qt版本的自定义 mkspec 。 | |
--name <NAME> | 工具条名称。您可以使用变量根据设置的工具条元素(如Qt版本)生成工具条名称。 | |
--qt <ID> | 使用 addQt 操作添加Qt版本时所用ID之一。 | |
<KEY> <TYPE:VALUE> | 额外的键值对形式的设置。 |
更多信息,请参阅 添加工具条。
工具条示例
要添加一个使用GCC编译器和自建的Qt在Linux上构建应用程序的工具条,请输入
./sdktool addKit \ --id "company.product.kit" \ --name "Qt %{Qt:Version} (company, product)" \ --debuggerid "company.product.toolchain.gdb" \ --devicetype GenericLinuxOsType \ --sysroot /tmp/sysroot \ --Ctoolchain "ProjectExplorer.ToolChain.Gcc:company.product.toolchain.gcc" \ --Cxxtoolchain "ProjectExplorer.ToolChain.Gcc:company.product.toolchain.g++" \ --qt "company.product.qt" \ --mkspec "devices/linux-mipsel-broadcom-97425-g++" \
添加、获取和查找键
输入相对于顶级设置目录的文件路径(不带.xml扩展名),后跟一个或多个 <KEY> <TYPE>:<VALUE>
键值对。
移除已配置的项目
要删除CMake工具、编译器、调试器、设备、Qt版本或工具包,请输入
rm<Item> --id <ID>
其中 <ID>
是项目的ID。
©2024Qt公司有限公司。本文件中包含的文档贡献权归其各自的版权所有者所有。在此提供的文档是根据由自由软件基金会发布的GNU自由文档许可版1.3条款许可的。Qt及其相应的标志是Qt公司芬兰及/或在其他国家和地区的商标。所有其他商标均为各自所有者的财产。