CMake 변수 레퍼런스
Qt 빌드 변수
Qt를 빌드할 때 CMake 변수를 사용하여 빌드 결과를 제어할 수 있습니다.
변수 | 설명 |
---|---|
QT_HOST_PATH | 일반 빌드 또는 교차 컴파일 중 다른 Qt 빌드 중에 호스트 도구를 사용할 수 있는 호스트 Qt 설치 위치입니다. |
QT_FORCE_BUILD_TOOLS | 호스트 툴이 이미 있는 경우에도 빌드 툴을 강제 실행합니다. Qt를 교차 컴파일하여 SDK에 교차 빌드된 도구가 있는지 확인할 때 유용합니다. |
QT_FORCE_FIND_TOOLS | 교차 컴파일하지 않을 경우 QT_HOST_PATH 에 미리 빌드된 Qt 도구를 사용합니다. 이 변수는 QT_FORCE_BUILD_TOOLS 가 ON 로 설정된 경우에만 적용됩니다. 그렇지 않으면 QT_FORCE_FIND_TOOLS 은 기본 동작에 영향을 미치지 않습니다. |
모듈 변수
find_package
로 로드된 Qt 모듈은 다양한 변수를 설정합니다.
참고: 이러한 변수에 직접 액세스해야 하는 경우는 거의 없습니다. 모듈에 대한 링크와 같은 일반적인 작업은 각 모듈이 정의하는 라이브러리 타깃을 통해 수행해야 합니다.
예를 들어 find_package(Qt6 COMPONENTS Widgets)
는 성공하면 다음과 같은 변수를 사용할 수 있습니다:
변수 | 설명 |
---|---|
Qt6Widgets_COMPILE_DEFINITIONS | 라이브러리를 대상으로 빌드할 때 사용할 컴파일 정의 목록입니다. |
Qt6Widgets_DEFINITIONS | 라이브러리를 대상으로 빌드할 때 사용할 정의 목록입니다. |
Qt6Widgets_EXECUTABLE_COMPILE_FLAGS | 라이브러리를 대상으로 실행 파일을 빌드할 때 사용할 플래그 문자열입니다. |
Qt6Widgets_FOUND | 모듈을 성공적으로 찾았는지 여부를 설명하는 부울입니다. |
Qt6Widgets_INCLUDE_DIRS | 라이브러리를 대상으로 빌드할 때 사용할 인클루드 디렉터리 목록입니다. |
Qt6Widgets_LIBRARIES | 모듈에 대해 임포트한 대상의 이름입니다: Qt6::Widgets |
Qt6Widgets_PRIVATE_INCLUDE_DIRS | 라이브러리를 대상으로 빌드하고 비공개 Qt API를 사용할 때 사용할 비공개 include 디렉터리 목록입니다. |
Qt6Widgets_VERSION | 모듈의 버전이 포함된 문자열입니다. |
find_package
로 검색된 모든 패키지의 경우 이 변수와 동등한 변수를 사용할 수 있으며 대소문자를 구분합니다.
설치 변수
또한 특정 패키지가 아니라 Qt 설치 자체와 관련된 변수도 있습니다.
변수 | 설명 |
---|---|
| Qt 5와 Qt 6 프로젝트가 혼합된 경우 qt_ 명령이 전달할 Qt 버전을 제어하는 정수입니다. 각각의 find_package() 호출 전에 5 또는 6 로 설정해야 합니다.
설정하지 않으면 첫 번째 |
QT_LIBINFIX | Qt XML이 -libinfix 로 구성된 경우 라이브러리 이름에 사용되는 접두사를 포함하는 문자열입니다. |
| qt_ 로 시작하는 명령을 숨기고 qt6_ 로 시작하는 버전이 있는 명령만 남깁니다. |
| Qt:: 로 시작하는 가져온 대상을 숨기고 대신 Qt6:: 로 시작하는 대상을 사용해야 합니다. |
QT_VISIBILITY_AVAILABLE | 유닉스에서, Qt 라이브러리와 플러그인이 -fvisibility=hidden 로 컴파일되었는지 여부를 나타내는 부울입니다. 즉, 선택된 심볼만 내보냅니다. |
프로젝트 변수
이러한 변수는 Qt에서 제공하는 CMake 명령에 영향을 줄 수 있습니다. 프로젝트, 툴체인 파일 또는 기타 서드파티 패키지에 의해 설정될 수 있습니다.
Qt6::Core
호스트 시스템의 안드로이드 전용 아키텍처 | |
안드로이드 SDK의 위치 | |
프로젝트 패키지가 빌드되는 ABI 목록 | |
Android 애플리케이션에 전달할 인수 목록 | |
자동 감지된 안드로이드용 Qt SDK 목록을 사용하여 다중 ABI 패키지를 빌드할 수 있습니다. | |
빌드 유형에 관계없이 릴리스 패키지 서명을 강제 또는 비활성화합니다. | |
QtQuickViewContent 기반 클래스 생성 가능 | |
다중 ABI 빌드에서 CMake 변수를 공유할 수 있습니다. | |
지정된 키 저장소, 별칭 및 저장소 암호로 .aab 패키지에 서명합니다. | |
지정된 키스토어, 별칭 및 저장소 암호로 패키지에 서명합니다. | |
일부 대상 플랫폼에 런타임 바이너리를 배포하기 위한 접두사 상대 하위 디렉터리 | |
런타임 종속성 검색에서 제외되는 디렉터리 | |
일부 대상 플랫폼에 프로그램 실행 파일을 배포하기 위한 접두사 상대 하위 디렉터리 | |
일부 대상 플랫폼에 라이브러리를 배포하기 위한 접두사 상대 하위 디렉터리 | |
일부 대상 플랫폼에 Qt 플러그인을 배포하기 위한 접두사 상대 하위 디렉터리 | |
배포를 위한 기본 위치 | |
일부 대상 플랫폼에 QML 플러그인을 배포하기 위한 접두사 상대 하위 디렉터리입니다. | |
배포 지원을 설정하기 위해 포함할 파일 이름 | |
일부 대상 플랫폼에 Qt 번역을 배포하기 위한 접두사 상대 하위 디렉터리 | |
배포 도구의 상세 모드 활성화 | |
크로스 컴파일 시 호스트 Qt 설치 위치. | |
번역 가능한 문자열의 언어 지정 | |
프로젝트 국제화에 사용할 언어 목록 | |
모든 타겟에서 사용하는 iOS 실행 화면 스토리보드 경로 | |
안드로이드 배포 시 프로젝트에서 빌드한 공유 라이브러리 타깃의 수집 방지 | |
Android 배포 중 임포트된 타깃 수집 방지 | |
iOS에서 대상 최종화 중 대체 앱 번들 ID 제공을 비활성화합니다. | |
iOS에서 타겟을 마무리하는 동안 폴백 팀 ID 제공을 비활성화합니다. | |
이후 qt_standard_project_setup() 호출이 변경되지 않도록 합니다. | |
해당 ABI에 대한 안드로이드용 Qt 경로를 지정하는 변수 세트 | |
타겟별 안드로이드 빌드 디렉터리 사용 가능 |
Qt6::인터페이스 프레임워크
모든 ifcodegen 함수에 대한 상세 로깅 활성화 | |
ifcodegen 템플릿의 검색 경로 |
Qt6::멀티미디어
iOS에서 FFmpeg 코드 서명을 비활성화합니다. |
Qt6::Qml
다음에 대한 .qmlls.ini 파일 자동 생성을 활성화합니다. QML Language Server | |
QML 파일을 바이트코드 또는 C++ 코드로 컴파일을 비활성화합니다. | |
기본적으로 QML 모듈이 생성되는 기본 출력 디렉터리입니다. |
표준 CMake 변수
CMAKE_오토젠_베터_그래프_멀티_컨피그 | 다중 구성 생성기의 종속성 그래프를 개선합니다. |
© 2025 The Qt Company Ltd. 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.