이 페이지에서

SDK 도구

Qt Online Installer SDK 도구(sdktool)를 사용하여 CMake를 구성하고 컴파일러, 디버거, 장치, Qt 버전과 같은 Kit 기본 설정을 지정합니다. 예를 들어, 명령줄에서 이 도구를 사용하여 컴퓨터의 모든 사용자에 대해 Qt 및 Qt Creator 기본 설정을 자동으로 설정할 수 있습니다. 단일 사용자의 경우, 일반적으로 Preferences > Kits 에서 변경하는 것이 더 쉽습니다.

SDK 도구를 사용하려면 Qt 설치 디렉터리의 Tools\sdktool\bin 디렉터리에서 다음 명령을 입력하십시오.

sdktool [OPTION] [OPERATION [OPTIONS]]

사용 중인 SDK Tool 버전이 지원하는 옵션 및 작업에 대한 정보를 확인하려면 다음을 입력하십시오:

sdktool --help

값 유형

이 작업들은 생성하는 구성에 <KEY> <TYPE>:<VALUE> 형식의 설정을 추가합니다. 지원되는 TYPE 값은 다음과 같습니다:

SDK 경로

Qt Online InstallerQt Creator 독립 실행형 설치 프로그램 모두 sdktool 를 설치합니다. 설치 프로그램의 sdktool 는 기본적으로 설치 프로그램의 Qt Creator 가 SDK Tool이 기록한 정보를 읽는 위치로 설정됩니다. sdktool 를 다른 Qt Creator 설치 위치로 지정하려면, Qt Online Installer 를 사용하는지 오프라인 설치 프로그램을 사용하는지에 따라 --sdkpath 를 설정하십시오.

  • Qt Online Installer: <Qt_Online_Installer>/Tools/sdktool
  • Qt Creator 독립형 설치 프로그램:
    • Windows 및 Linux의 경우: <qtcreator>/share/qtcreator/
    • macOS에서 Qt Creator.app/Contents/Resources/

옵션

다음 표는 사용 가능한 옵션을 요약한 것입니다.

옵션설명
--help | -hSDK 도구 옵션에 대한 도움말을 표시합니다.

--help <OPERATION> 를 입력하면 해당 작업에 필요한 옵션에 대한 도움말을 확인할 수 있습니다.

--sdkpath=<PATH> | -s <PATH>SDK 도구가 파일을 작성하는 경로를 설정합니다.

작업

다음 표는 사용 가능한 작업을 요약한 것입니다.

작업설명
addAbiFlavor시스템 아키텍처(ABI)를 추가합니다.
addCMakeCMake 도구의 경로를 추가합니다.
addDebugger디버거를 추가합니다.
addDev장치를 추가합니다.
addKeys<KEY> <TYPE>:<VALUE> 형식의 키-값 쌍으로 설정을 추가합니다.
addKit빌드 및 실행 키트를 추가합니다.
addQtQt 버전을 추가합니다.
addTC컴파일러를 추가합니다.
find설정 값을 찾습니다.
findKey설정 키를 찾습니다.
get설정을 가져옵니다.
rmCMakeCMake 도구의 경로를 제거합니다.
rmDebugger디버거를 제거합니다.
rmDev장치 제거
rmKeys설정을 제거합니다.
rmQtQt 버전을 제거합니다.
rmTC컴파일러를 제거합니다.

시스템 아키텍처(ABI) 추가

addAbiFlavor

sdktool addAbiFlavor --flavor <NAME> --oses <OS>(,<OS>)*

addAbiFlavor 옵션

다음 표는 사용 가능한 옵션을 요약한 것입니다.

옵션설명필수
--flavor <NAME>시스템 아키텍처(ABI)의 이름.네
--oses <OS>(,<OS>)*ABI가 적용되는 운영 체제.네

ABI 유형 예시

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>ProjectExplorer::Abi::fromString() 가 구문 분석할 수 있는 형식의 컴파일러 ABI.네
--id <ID>ToolChainType:some_unique_part 형식의 툴체인 ID. 여기서 툴체인 유형은 다음 중 하나이거나 플러그인에서 제공하는 다른 값일 수 있습니다:
  • ProjectExplorer.ToolChain.Msvc Microsoft MSVC 컴파일러용. 이 컴파일러는 자동으로 감지되므로 SDK 도구를 사용하여 추가할 필요가 없습니다.
  • ProjectExplorer.ToolChain.Gcc Linux 또는 macOS의 GCC용.
  • ProjectExplorer.ToolChain.Clang Clang용.
  • ProjectExplorer.ToolChain.LinuxIcc LinuxICC용.
  • ProjectExplorer.ToolChain.Mingw MinGW용.
  • ProjectExplorer.ToolChain.ClangCl Clang/CL용.
  • ProjectExplorer.ToolChain.Custom 사용자 정의 툴체인용.
  • Qt4ProjectManager.ToolChain.Android Android용.
  • Qnx.QccToolChain QNX QCC용.
  • WebAssembly.ToolChain.Emscripten Emscripten용.

ProjectExplorer::ToolChain 에서 파생된 클래스의 ID를 확인하십시오.

some_unique_part 값은 무엇이든 가능합니다. Qt Creator 는 기본적으로 GUID를 사용합니다.

네
--language <ID>툴체인의 입력 언어 ID: C 또는 Cxx. C 또는 C++ 컴파일러를 등록할 때는 해당 C++ 또는 C 컴파일러도 함께 등록해야 합니다.네
--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>디버거 엔진 유형:
  • GDB의 경우 1
  • 4: CDB
  • 8: PDB
  • LLDB: 256
  • GDB DAP: 512
  • LLDB DAP의 경우 1024
  • uVision 디버거: 4096
--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>인증 방법:
  • 모든 인증 방법의 경우 0
  • 공개 키 및 개인 키 쌍을 사용하는 SSH 인증의 경우 1
--b2qHardware <STRING>Boot to Qt 하드웨어에 대한 플랫폼 정보.
--b2qSoftware <STRING>Boot to 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>장치가 자동으로 감지되었는지 여부:
  • 수동으로 추가된 기기의 경우 0
  • 자동으로 감지된 기기의 경우 1
--osType <STRING>기기의 운영 체제:
  • Android.Device.Type
  • BareMetalOsType
  • QdbLinuxOsType
  • DockerDeviceType
  • Ios.Device.Type
  • Ios.Simulator.Type
  • McuSupport.DeviceType
  • Desktop
  • WebAssemblyDeviceType
  • QnxOsType
  • GenericLinuxOsType
--password <STRING>비밀번호 인증을 위한 비밀번호.
--sshPort <INT>SSH 연결에 사용되는 포트 번호.
--timeout <INT>SSH 연결 재사용 시 타임아웃(초).
--type <INT>장치 유형:
  • 하드웨어 장치의 경우 0
  • 1: 에뮬레이터, 시뮬레이터 또는 가상 장치
네
--uname <STRING>장치에 액세스할 사용자 이름.
<KEY> <TYPE:VALUE>키-값 쌍 형태의 추가 설정.

자세한 내용은 '방법: 기기용 개발'을 참조하십시오.

Linux 기기 예시

Linux에서 원격 Linux 장치(하드웨어 장치)를 추가하고 SSH 키를 사용하여 장치에 인증하려면 다음을 입력하십시오:

./sdktool addDev \
    --id " LinuxDevice1" \
    --name "My Remote Linux Device" \
    --type 0 \
    --authentication 1 \
    --freePorts "10000-10100" \
    --host "10.10.10.15" \
    --keyFile "/usr/.ssh/qtc_id" \
    --origin 0 \
    --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 버전의 유형:
  • Qt4ProjectManager.QtVersion.Android Android용.
  • Qt4ProjectManager.QtVersion.Desktop 데스크톱용 Qt의 경우.
  • Qt4ProjectManager.QtVersion.Ios iOS용.
  • Qt4ProjectManager.QtVersion.QNX.QNX QNX용.
  • RemoteLinux.EmbeddedLinuxQt 임베디드 리눅스용.
  • Qt4ProjectManager.QtVersion.WebAssembly WebAssembly용.

QtVersion::type() 가 반환하는 문자열.

네
<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>애플리케이션을 실행할 기기의 유형:
  • Android.Device.Type Android 기기의 경우.
  • Desktop 로컬 데스크톱에서 실행되는 코드의 경우.
  • Ios.Device.Type iOS 기기의 경우.
  • Ios.Simulator.Type iOS 시뮬레이터용.
  • GenericLinuxOsType 임베디드 리눅스 기기용.
  • WebAssemblyDeviceType 웹 브라우저용.

IDevice::type() 가 반환하는 문자열.

네
--env <VALUE>빌드 환경에 대한 환경 변수 값입니다. 이 유형의 항목을 여러 개 추가할 수 있습니다.
--run-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>키-값 쌍 형태의 추가 설정입니다.

자세한 내용은 키트 추가를 참조하십시오.

키트 예시

Linux에서 애플리케이션을 빌드하기 위해 GCC 컴파일러와 자체 빌드한 Qt를 사용하는 키트를 추가하려면 다음을 입력하십시오:

./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입니다.

‘키트 관리 방법’, ‘설치’ 및 ‘키트 관리항목도 참조하십시오 .

Copyright © The Qt Company Ltd. and other contributors. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.