변수
qmake의 기본 동작은 각 프로젝트의 빌드 프로세스를 정의하는 변수 선언의 영향을 받습니다. 이 중 일부는 각 플랫폼에 공통인 헤더 및 소스 파일과 같은 리소스를 선언합니다. 다른 변수는 특정 플랫폼에서 컴파일러와 링커의 동작을 사용자 지정하는 데 사용됩니다.
플랫폼별 변수는 확장하거나 수정하는 변수의 명명 패턴을 따르지만 이름에 관련 플랫폼의 이름이 포함됩니다. 예를 들어, 메이크스펙은 QMAKE_LIBS
을 사용하여 각 프로젝트가 링크해야 하는 라이브러리 목록을 지정하고 QMAKE_LIBS_X11
을 사용하여 이 목록을 확장할 수 있습니다.
ANDROID_ABIS
참고: 이 변수는 안드로이드 타깃에만 적용됩니다.
안드로이드 타깃 ABI 목록을 지정합니다. 유효한 값은 armeabi-v7a, arm64-v8a, x86, x86_64입니다.
ABI는 qmake 인수로 제공할 수 있습니다:
qmake ANDROID_ABIS="armeabi-v7a arm64-v8a"
참고: *.pro 파일 내에서 이 변수를 사용할 수도 있지만, qmake
명령줄에 지정된 모든 ABI를 재정의하므로 권장하지 않습니다.
android_api_version
참고: 이 변수는 안드로이드 타겟에만 적용됩니다.
Android API 레벨 번호를 지정합니다. 자세한 내용은 안드로이드 빌드 번호를 참조하십시오.
안드로이드_애플리케이션_인수
참고: 이 변수는 안드로이드 타깃에만 적용됩니다.
"android.app.arguments" 태그와 함께 AndroidManifest.xml
를 사용하여 안드로이드 앱에 대한 추가 명령줄 인수를 지정합니다. 인수는 문자열을 사용합니다:
ANDROID_APPLICATION_ARGUMENTS = "arg1 arg2 arg3"
android_bundled_jar_dependencies
참고: 이 변수는 안드로이드 모듈에만 적용됩니다.
이 변수는 Qt 모듈을 작성할 때 유용합니다. 예를 들어 모듈에서 사용하는 사전 번들 종속성 목록을 .jar
형식으로 지정합니다:
ANDROID_BUNDLED_JAR_DEPENDENCIES += jar/Qt6Android.jar
android_deployment_dependencies
참고: 이 변수는 안드로이드 타깃에만 적용됩니다.
기본적으로 androiddeployqt는 애플리케이션의 종속성을 감지합니다. 그러나 플러그인의 런타임 사용은 감지할 수 없으므로 애플리케이션이 잠재적 종속성이 있는 플러그인에 의존할 수 있으므로 오탐이 발생할 수 있습니다. APK
의 크기를 최소화하려면 이 변수를 사용하여 자동 감지를 재정의할 수 있습니다. 여기에는 포함해야 하는 모든 Qt 파일 목록이 포함되어야 하며, Qt 설치 루트를 기준으로 한 경로가 포함되어야 합니다.
참고: 이 변수로 지정된 Qt 파일만 포함됩니다. 올바른 파일을 모두 포함하지 않으면 충돌이 발생할 수 있습니다. 또한 파일이 올바른 로딩 순서로 나열되어 있는지 확인하는 것도 중요합니다. 이 변수는 자동 감지를 완전히 무시할 수 있는 방법을 제공하므로 라이브러리가 종속성보다 먼저 나열되면 일부 기기에서 로드되지 않습니다.
안드로이드_배포_설정_파일
참고: 이 변수는 안드로이드 타겟에만 적용됩니다.
androiddeployqt 및 androidtestrunner
에 필요한 android-deployment-settings.json
파일의 경로를 지정합니다. 이 변수는 qmake에서 생성된 설정 파일의 경로를 재정의하므로 유효한 설정 파일을 제공해야 합니다.
android_extra_libs
참고: 이 변수는 안드로이드 타깃에만 적용됩니다.
애플리케이션의 libs
폴더에 복사하여 시작 시 로드할 외부 라이브러리 목록입니다. 예를 들어 애플리케이션에서 OpenSSL을 활성화하는 데 사용할 수 있습니다. 자세한 내용은 Android용 OpenSSL 지원 추가하기를 참조하세요.
각 ABI에 자체 디렉터리가 있는 여러 ABI에 대한 외부 라이브러리를 포함하려면 다음을 사용합니다:
for (abi, ANDROID_ABIS): ANDROID_EXTRA_LIBS += $$PWD/$${abi}/library_name.so
그렇지 않고 라이브러리 이름에 ABI가 포함된 경우 다음을 사용합니다:
for (abi, ANDROID_ABIS): ANDROID_EXTRA_LIBS += $$PWD/library_name_$${abi}.so
android_extra_plugins
참고: 이 변수는 안드로이드 타깃에만 적용됩니다.
애플리케이션에서 번들로 제공해야 하지만 에셋 시스템을 통해 전달할 수 없는 C++ 플러그인 또는 리소스(예: QML 플러그인)의 경로를 지정합니다. 이 변수를 사용하면 androiddeployqt가 모든 것이 제대로 패키징되고 배포되는지 확인합니다.
ANDROID_EXTRA_PLUGINS
는 추가 플러그인이 빌드된 디렉터리를 가리켜야 합니다. 또한 빌드 디렉토리 구조는 Qt 플러그인과 유사한 명명 규칙, 즉 plugins/<플러그인 이름>을 따라야 합니다 .
플러그인 라이브러리의 이름 형식은 libplugins_<유형>_<이름>_<abi>.so여야 합니다. 이를 위해 플러그인 프로 파일은 다음과 같이 정의할 수 있습니다:
TEMPLATE = lib CONFIG += plugin PLUGIN_TYPE = imageformats DESTDIR = $$top_builddir/plugins/myplugin TARGET = $$qt5LibraryTarget(myplugin, "plugins/$$PLUGIN_TYPE/")
.qmake.conf에 top_builddir을 다음과 같이 정의할 수 있습니다:
top_builddir=$$shadowed($$PWD)
이렇게 하면 올바른 이름 망글링이 플러그인 라이브러리(plugins/myplugin/libplugins_imageformats_myplugin_armeabi-v7a.so)에 적용되도록 할 수 있습니다.
그런 다음 추가 이미지 형식 플러그인 myplugin이 $$DESTDIR/plugins/myplugin/로 빌드되었다고 가정하면 다음은 올바르게 패키징되었는지 확인합니다:
ANDROID_EXTRA_PLUGINS += $$top_builddir/plugins
android_features
참고: 이 변수는 안드로이드 모듈에만 적용됩니다.
모듈의 기능 목록을 지정합니다:
ANDROID_FEATURES += android.hardware.location.gps
자세한 내용은 안드로이드 <사용-기능> 문서를 참조하세요.
android_lib_dependencies
참고: 이 변수는 안드로이드 모듈에만 적용됩니다.
이 변수는 Qt 모듈을 작성할 때 유용합니다. 예를 들어 모듈에서 사용하는 사전 빌드된 종속성 목록을 지정합니다:
ANDROID_LIB_DEPENDENCIES += \ plugins/libplugins_platforms_qtforandroid.so
android_min_sdk_version
참고: 이 변수는 안드로이드 타깃에만 적용됩니다.
프로젝트의 최소 Android API 레벨을 지정합니다. 기본적으로 이 변수는 API 레벨 23으로 설정됩니다.
android_package_source_dir
참고: 이 변수는 Android 타깃에만 적용됩니다.
사용자 지정 안드로이드 패키지 템플릿의 경로를 지정합니다. 안드로이드 패키지 템플릿에는
- 안드로이드 매니페스트.xml 파일
- build.gradle 파일 및 기타 Gradle 스크립트
- res/values/libs.xml 파일
이 변수로 지정된 경로에는 src
디렉터리 아래에 사용자 지정 Java 클래스가 포함될 수 있습니다. 기본적으로 androiddeployqt 도구는 안드로이드용 Qt 설치 경로에서 프로젝트의 빌드 디렉토리로 애플리케이션 템플릿을 복사한 다음 이 변수로 지정된 경로의 내용을 그 위에 복사하여 기존 파일을 덮어씁니다. 예를 들어, 애플리케이션에 대한 사용자 지정 AndroidManifest.xml
을 만든 다음 이 변수로 지정된 디렉터리에 직접 배치할 수 있습니다.
android_permissions
참고: 이 변수는 안드로이드 모듈에만 적용됩니다.
모듈의 권한 목록을 지정합니다:
ANDROID_PERMISSIONS += android.permission.ACCESS_FINE_LOCATION
자세한 내용은 안드로이드 <사용 권한> 문서를 참조하세요.
android_target_sdk_version
참고: 이 변수는 Android 대상에만 적용됩니다.
프로젝트의 대상 Android API 레벨을 지정합니다. 기본적으로 이 변수는 API 레벨 34로 설정됩니다.
android_version_code
참고: 이 변수는 Android 타깃에만 적용됩니다.
애플리케이션의 버전 번호를 지정합니다. 자세한 내용은 안드로이드 앱 버전 관리를 참조하십시오.
android_version_name
참고: 이 변수는 Android 대상에만 적용됩니다.
애플리케이션의 버전을 사람이 읽을 수 있는 문자열로 지정합니다. 자세한 내용은 안드로이드 앱 버전 관리를 참조하십시오.
CONFIG
프로젝트 구성 및 컴파일러 옵션을 지정합니다. 이 값은 qmake에서 내부적으로 인식되며 특별한 의미를 갖습니다.
참고: 값은 대소문자를 구분합니다.
다음 CONFIG
값은 컴파일러 및 링커 플래그를 제어합니다:
옵션 | 설명 |
---|---|
release | 프로젝트를 릴리스 모드로 빌드합니다. debug 도 지정하면 마지막 플래그가 적용됩니다. |
debug | 프로젝트를 디버그 모드로 빌드합니다. |
debug_and_release | 프로젝트가 디버그 모드와 릴리스 모드 모두에서 빌드되도록 준비됩니다. |
debug_and_release_target | 이 옵션은 기본적으로 설정되어 있습니다. debug_and_release 도 설정하면 디버그 및 릴리스 빌드가 별도의 디버그 및 릴리스 디렉터리에 생성됩니다. |
build_all | debug_and_release 을 지정하면 프로젝트는 기본적으로 디버그 모드와 릴리스 모드 모두에서 빌드됩니다. |
autogen_precompile_source | .pro 파일에 지정된 미리 컴파일된 헤더 파일을 포함하는 .cpp 파일을 자동으로 생성합니다. |
ordered | subdirs 템플릿을 사용하는 경우 이 옵션은 나열된 디렉터리가 주어진 순서대로 처리되도록 지정합니다.참고: 이 옵션의 사용은 권장하지 않습니다. 서브디어스 변수 문서에 설명된 대로 종속성을 지정하세요. |
precompile_header | 프로젝트에서 미리 컴파일된 헤더를 사용할 수 있도록 지원합니다. |
precompile_header_c(MSVC만 해당) | C 파일에 미리 컴파일된 헤더 사용을 지원합니다. |
warn_on | 컴파일러가 가능한 한 많은 경고를 출력해야 합니다. warn_off 도 지정하면 마지막 경고가 적용됩니다. |
warn_off | 컴파일러가 가능한 한 적은 경고를 출력해야 합니다. |
예외 | 예외 지원이 활성화됩니다. 기본적으로 설정됩니다. |
exceptions_off | 예외 지원을 비활성화합니다. |
ltcg | 링크 타임 코드 생성이 활성화됩니다. 이 옵션은 기본적으로 꺼져 있습니다. |
rtti | RTTI 지원이 활성화됩니다. 기본적으로 컴파일러 기본값이 사용됩니다. |
rtti_off | RTTI 지원이 비활성화됩니다. 기본적으로 컴파일러 기본값이 사용됩니다. |
stl | STL 지원이 활성화됩니다. 기본적으로 컴파일러 기본값이 사용됩니다. |
stl_off | STL 지원이 비활성화됩니다. 기본적으로 컴파일러 기본값이 사용됩니다. |
thread | 스레드 지원이 활성화됩니다. CONFIG에 기본값인 qt 이 포함된 경우 활성화됩니다. |
no_utf8_source | 프로젝트의 소스 파일에 UTF-8 인코딩을 사용하지 않도록 지정합니다. 대신 컴파일러 기본값이 사용됩니다. |
hide_symbols | 바이너리에서 심볼의 기본 표시 여부를 숨김으로 설정합니다. 기본적으로 컴파일러 기본값이 사용됩니다. |
c99 | C99 지원이 활성화됩니다. 컴파일러가 C99를 지원하지 않거나 C 표준을 선택할 수 없는 경우에는 이 옵션이 적용되지 않습니다. 기본적으로 컴파일러 기본값이 사용됩니다. |
c11 | C11 지원이 활성화됩니다. 컴파일러가 C11을 지원하지 않거나 C 표준을 선택할 수 없는 경우에는 이 옵션이 적용되지 않습니다. 기본적으로 컴파일러 기본값이 사용됩니다. |
c17 | C17(C18이라고도 함) 지원이 활성화됩니다. 컴파일러가 C17을 지원하지 않거나 C 표준을 선택할 수 없는 경우에는 이 옵션이 적용되지 않습니다. 기본적으로 컴파일러 기본값이 사용됩니다. |
c18 | c17 값의 별칭입니다. |
strict_c | C 컴파일러 확장에 대한 지원을 비활성화합니다. 기본적으로 활성화되어 있습니다. |
c++11 | C++11 지원이 활성화됩니다. 컴파일러가 C++11을 지원하지 않거나 C++ 표준을 선택할 수 없는 경우에는 이 옵션이 적용되지 않습니다. 기본적으로 지원은 활성화되어 있습니다. |
c++14 | C++14 지원이 활성화됩니다. 컴파일러가 C++14를 지원하지 않거나 C++ 표준을 선택할 수 없는 경우 이 옵션은 효과가 없습니다. 기본적으로 지원은 활성화되어 있습니다. |
c++17 | C++17 지원이 활성화됩니다. 컴파일러가 C++17을 지원하지 않거나 C++ 표준을 선택할 수 없는 경우 이 옵션은 효과가 없습니다. 기본적으로 지원은 활성화되어 있습니다. |
c++1z | c++17의 더 이상 사용되지 않는 별칭입니다. |
c++20 | C++20 지원이 활성화됩니다. 컴파일러가 C++20을 지원하지 않거나 C++ 표준을 선택할 수 없는 경우 이 옵션은 효과가 없습니다. 기본적으로 지원은 비활성화되어 있습니다. |
c++2a | c++20의 더 이상 사용되지 않는 별칭입니다. |
c++latest | 최신 C++ 언어 표준에 대한 지원이 활성화됩니다. 이 옵션은 주로 /std:c++latest 컴파일러 인수를 지원하는 MSVC에 유용합니다. 다른 툴체인의 경우, 이 옵션은 Qt에 알려진 최신 C++ 표준을 활성화합니다. 기본적으로 이 옵션은 비활성화되어 있습니다. |
strict_c++ | C++ 컴파일러 확장에 대한 지원을 비활성화합니다. 기본적으로 활성화되어 있습니다. |
depend_includepath | DEPENDPATH에 INCLUDEPATH 값을 추가합니다. 기본적으로 설정되어 있습니다. |
lrelease | 번역 및 EXTRA_TRANSLATIONS에 나열된 모든 파일에 대해 lrelease 을 실행합니다. embed_translations 이 설정되지 않은 경우, 생성된 .qm 파일을 QM_FILES_INSTALL_PATH에 설치합니다. QMAKE_LRELEASE_FLAGS를 사용하여 lrelease 호출에 옵션을 추가합니다. 기본적으로 설정되지 않습니다. |
embed_translations | lrelease 에서 생성된 번역을 실행 파일의 QM_FILES_RESOURCE_PREFIX 아래에 임베드합니다. lrelease 도 설정해야 합니다. 기본적으로 설정되지 않습니다. |
create_libtool | 현재 빌드된 라이브러리에 대한 libtool .la 파일을 만듭니다. |
create_pc | 현재 빌드된 라이브러리에 대한 pkg-config .pc 파일을 생성합니다. |
no_batch | NMake 전용: NMake 일괄 처리 규칙 또는 추론 규칙 생성을 해제합니다. |
skip_target_version_ext | Windows에서 DLL 파일 이름에 추가되는 자동 버전 번호를 표시하지 않습니다. |
SUPPRESS_VCPROJ_WARNS | VS 프로젝트 생성기의 경고를 표시하지 않습니다. |
windeployqt | 연결 후 자동으로 windeployqt를 호출하고 출력을 배포 항목으로 추가합니다. |
dont_recurse | 현재 하위 프로젝트에 대한 qmake 재귀를 억제합니다. |
NO_INCLUDE_PWD | 현재 디렉터리를 포함 경로에 추가하지 않습니다. |
compile_included_sources | 기본적으로 qmake는 다른 소스 파일에 포함된 소스 파일을 컴파일하지 않습니다. 이 옵션은 이 동작을 비활성화합니다. |
debug_and_release
옵션(Windows에서 기본값)을 사용하면 프로젝트가 세 번 처리됩니다: 한 번은 "메타" 메이크파일을 생성하고, 두 번은 메이크파일.디버그와 메이크파일.릴리스를 생성하기 위해 더 처리됩니다.
후자의 경우 build_pass
및 debug
또는 release
옵션이 CONFIG
에 추가되어 빌드별 작업을 수행할 수 있습니다. 예를 들어
build_pass:CONFIG(debug, debug|release) { unix: TARGET = $$join(TARGET,,,_debug) else: TARGET = $$join(TARGET,,,d) }
빌드 유형 조건문을 수동으로 작성하는 대신 일부 변수는 일반 QMAKE_LFLAGS 외에 QMAKE_LFLAGS_RELEASE와 같은 빌드별 변형을 제공합니다. 이러한 변수는 가능한 경우 사용해야 합니다.
메타 메이크파일은 debug
및 release
타깃을 통해 하위 빌드를 호출하고 all
타깃을 통해 결합된 빌드를 호출할 수 있게 합니다. build_all
CONFIG
옵션을 사용하면 결합된 빌드가 기본값이 됩니다. 그렇지 않으면 집합에서 마지막으로 지정된 CONFIG
옵션(debug
, release
)이 기본값을 결정합니다. 이 경우 all
대상을 명시적으로 호출하여 두 구성을 한 번에 빌드할 수 있습니다:
make all
참고: Visual Studio와 Xcode 프로젝트를 생성할 때는 세부 사항이 약간 다릅니다.
라이브러리를 링크할 때 qmake는 기본 플랫폼에 의존하여 이 라이브러리가 어떤 다른 라이브러리와 링크되는지 파악합니다. 그러나 정적으로 링크하는 경우 다음 CONFIG
옵션을 사용하지 않는 한 qmake는 이 정보를 얻지 못합니다:
옵션 | 설명 |
---|---|
create_prl | 이 옵션은 qmake가 이러한 종속성을 추적할 수 있도록 합니다. 이 옵션을 활성화하면 qmake는 확장자가 .prl 인 파일을 생성하여 라이브러리에 대한 메타 정보를 저장합니다(자세한 내용은 라이브러리 종속성 참조). |
link_prl | 이 옵션을 활성화하면 qmake는 애플리케이션이 링크한 모든 라이브러리를 처리하고 해당 메타 정보를 찾습니다(자세한 내용은 라이브러리 종속성 참조). |
NO_INSTALL_PRL | 이 옵션은 생성된 .prl 파일에 대한 설치 규칙 생성을 비활성화합니다. |
참고: 정적 라이브러리를 빌드할 때는 create_prl
옵션이 필요하고, 정적 라이브러리를 사용할 때는 link_prl
옵션이 필요합니다.
다음 옵션은 애플리케이션 또는 라이브러리 유형을 정의합니다:
옵션 | 설명 |
---|---|
qt | 대상은 Qt 애플리케이션 또는 라이브러리이며 Qt 라이브러리 및 헤더 파일이 필요합니다. Qt 라이브러리에 대한 적절한 포함 및 라이브러리 경로가 프로젝트에 자동으로 추가됩니다. 이 값은 기본적으로 정의되어 있으며 QT 변수를 사용하여 미세 조정할 수 있습니다. |
x11 | 대상은 X11 애플리케이션 또는 라이브러리입니다. 적절한 포함 경로와 라이브러리가 프로젝트에 자동으로 추가됩니다. |
테스트케이스 | 대상은 자동화된 테스트입니다. 테스트를 실행하기 위해 생성된 메이크파일에 검사 대상이 추가됩니다. 메이크파일을 생성할 때만 관련이 있습니다. |
insignificant_test | 자동화된 테스트의 종료 코드는 무시됩니다. testcase 도 설정된 경우에만 관련이 있습니다. |
windows | 대상은 Win32 창 애플리케이션입니다(앱만 해당). 적절한 포함 경로, 컴파일러 플래그 및 라이브러리가 프로젝트에 자동으로 추가됩니다. |
콘솔 | 대상은 Win32 콘솔 애플리케이션입니다(앱만 해당). 적절한 include 경로, 컴파일러 플래그 및 라이브러리가 프로젝트에 자동으로 추가됩니다. 크로스 플랫폼 애플리케이션의 경우 cmdline 옵션을 사용하는 것이 좋습니다. |
cmdline | 대상은 크로스 플랫폼 명령줄 애플리케이션입니다. Windows에서는 CONFIG += console 을 의미합니다. macOS에서는 CONFIG -= app_bundle 을 의미합니다. |
shared | 대상은 공유 객체/DLL입니다. 적절한 include 경로, 컴파일러 플래그 및 라이브러리가 프로젝트에 자동으로 추가됩니다. dll 은 모든 플랫폼에서 사용할 수 있으며, 대상 플랫폼에 적합한 접미사(.dll 또는 .so)가 붙은 공유 라이브러리 파일이 생성됩니다. |
dll | |
static | 대상은 정적 라이브러리(lib만 해당)입니다. 적절한 컴파일러 플래그가 프로젝트에 자동으로 추가됩니다. |
staticlib | |
plugin | 대상은 플러그인(라이브러리만 해당)입니다. 이 옵션을 사용하면 dll도 활성화됩니다. |
designer | 대상은 Qt Widgets Designer 의 플러그인입니다. |
no_lflags_merge | LIBS 변수에 저장된 라이브러리 목록이 사용되기 전에 고유한 값 목록으로 축소되지 않도록 합니다. |
메타타입 | 현재 프로젝트에 대한 <name>_metatypes.json 파일을 만듭니다. <name> 은 모두 소문자로 된 TARGET의 기본 이름입니다. |
qmltypes | C++로 정의된 QML 유형을 자동으로 등록합니다. 자세한 내용은 C++에서 QML 유형 정의하기를 참조하세요. 또한 현재 프로젝트에 대해 <template>.qmltypes 파일을 생성합니다. <template> 은 plugin 이 설정된 경우 plugins (복수, 기록상의 이유로)가 되고, 그렇지 않으면 TEMPLATE 값이 됩니다. qmltypes 은 metatypes 을 의미합니다. |
이러한 옵션은 Windows에서만 특정 기능을 정의합니다:
옵션 | 설명 |
---|---|
flat | vcapp 템플릿을 사용할 때 모든 소스 파일을 소스 그룹에 넣고 헤더 파일을 헤더 그룹에 넣으면 파일이 어떤 디렉터리에 있는지에 관계없이 모든 소스 파일을 헤더 그룹에 넣습니다. 이 옵션을 끄면 파일이 있는 디렉터리에 따라 소스/헤더 그룹 내에서 파일을 그룹화합니다. 이 옵션은 기본적으로 켜져 있습니다. |
embed_manifest_dll | 라이브러리 프로젝트의 일부로 생성된 DLL에 매니페스트 파일을 임베드합니다. |
embed_manifest_exe | 애플리케이션 프로젝트의 일부로 생성된 EXE에 매니페스트 파일을 임베드합니다. |
매니페스트 파일 임베드 옵션에 대한 자세한 내용은 플랫폼 노트를 참조하세요.
다음 옵션은 macOS에서만 적용됩니다:
옵션 | 설명 |
---|---|
app_bundle | 실행 파일을 번들에 넣습니다(기본값). |
lib_bundle | 라이브러리를 라이브러리 번들에 넣습니다. |
plugin_bundle | 플러그인을 플러그인 번들에 넣습니다. 이 값은 Xcode 프로젝트 생성기에서 지원되지 않습니다. |
번들에 대한 빌드 프로세스는 QMAKE_BUNDLE_DATA 변수의 내용에도 영향을 받습니다.
다음 옵션은 Linux/Unix 플랫폼에만 적용됩니다:
옵션 | 설명 |
---|---|
largefile | 대용량 파일에 대한 지원을 포함합니다. |
separate_debug_info | 라이브러리에 대한 디버깅 정보를 별도의 파일에 넣습니다. |
CONFIG
변수는 범위를 확인할 때도 확인됩니다. 이 변수에는 무엇이든 지정할 수 있습니다.
예를 들어
CONFIG += console newstuff ... newstuff { SOURCES += new.cpp HEADERS += new.h }
DEFINES
qmake는 이 변수의 값을 컴파일러 C 전처리기 매크로(-D 옵션)로 추가합니다.
예
DEFINES += USE_MY_STUFF
DEFINES_DEBUG
디버그 구성에 대한 전처리기 정의를 지정한다. 이 변수의 값은 프로젝트가 로드된 후 DEFINES에 추가됩니다. 이 변수는 일반적으로 qmake.conf에 설정되며 수정할 필요가 거의 없습니다.
이 변수는 Qt 5.13.2에 도입되었습니다.
defines_release
릴리스 구성에 대한 전처리기 정의를 지정합니다. 이 변수의 값은 프로젝트가 로드된 후 DEFINES에 추가됩니다. 이 변수는 일반적으로 qmake.conf에 설정되며 수정할 필요가 거의 없습니다.
참고: MSVC mkspec의 경우 이 변수에는 기본적으로 NDEBUG
값이 포함됩니다.
이 변수는 Qt 5.13.2에 도입되었습니다.
DEF_FILE
참고: 이 변수는 app
템플릿을 사용할 때 Windows에서만 사용됩니다.
프로젝트에 포함할 .def
파일을 지정합니다.
DEPENDPATH
종속성을 해결하기 위해 qmake가 검사할 디렉터리 목록을 지정합니다. 이 변수는 qmake가 소스 코드에서 #include
헤더 파일을 크롤링할 때 사용됩니다.
DESTDIR
대상 파일을 넣을 위치를 지정합니다.
예를 들면 다음과 같습니다:
DESTDIR = ../../lib
참고: 지원되는 문자 목록은 사용하는 빌드 도구에 따라 달라질 수 있습니다. 특히 make
에서는 괄호가 작동하지 않습니다.
DISTFILES
dist 대상에 포함할 파일 목록을 지정합니다. 이 기능은 UnixMake 사양에서만 지원됩니다.
예를 들어
DISTFILES += ../program.txt
DLLDESTDIR
참고: 이 변수는 Windows 대상에만 적용됩니다.
대상 dll을 복사할 위치를 지정합니다.
extra_translations
사용자 인터페이스 텍스트를 모국어가 아닌 언어로 번역한 번역(.ts) 파일 목록을 지정합니다.
번역과 달리 EXTRA_TRANSLATIONS
의 번역 파일은 업데이트가 아닌 lrelease로만 처리됩니다.
빌드 중에 파일을 자동으로 컴파일하려면 CONFIG += lrelease를 사용하고, Qt 리소스 시스템에서 사용할 수 있도록 하려면 CONFIG += lrelease embed_translations를 사용하면 됩니다.
Qt를 사용한 국제화(i18n) 및 지역화(l10n)에 대한 자세한 내용은 Qt Linguist 매뉴얼을 참조하십시오.
FORMS
컴파일하기 전에 uic
에서 처리할 UI 파일( Qt Widgets Designer 매뉴얼 참조)을 지정합니다. 이러한 UI 파일을 빌드하는 데 필요한 모든 종속성, 헤더 및 소스 파일이 프로젝트에 자동으로 추가됩니다.
예를 들어
FORMS = mydialog.ui \ mywidget.ui \ myconfig.ui
GUID
.vcproj
파일 내에 설정된 GUID를 지정합니다. GUID는 일반적으로 임의로 결정됩니다. 그러나 고정된 GUID가 필요한 경우 이 변수를 사용하여 설정할 수 있습니다.
이 변수는 .vcproj
파일에만 해당되며 그렇지 않으면 무시됩니다.
HEADERS
프로젝트의 헤더 파일을 정의한다.
qmake는 헤더에 있는 클래스에서 moc가 필요한지 자동으로 감지하고, moc 파일을 생성하고 연결하기 위해 프로젝트에 적절한 의존성과 파일을 추가합니다.
예를 들어:
HEADERS = myclass.h \ login.h \ mainwindow.h
소스도 참조하세요.
ICON
이 변수는 Mac OS에서만 애플리케이션 아이콘을 설정하는 데 사용됩니다. 자세한 내용은 애플리케이션 아이콘 문서를 참조하세요.
IDLSOURCES
이 변수는 Windows에서만 Visual Studio 프로젝트 생성 시 지정된 파일을 생성된 파일 폴더에 넣기 위해 사용됩니다.
INCLUDEPATH
프로젝트를 컴파일할 때 검색할 #include 디렉터리를 지정합니다.
예
INCLUDEPATH = c:/msdev/include d:/stl/include
공백이 포함된 경로를 지정하려면 공백에 설명된 기법을 사용하여 경로를 따옴표로 묶습니다.
win32:INCLUDEPATH += "C:/mylibs/extra headers" unix:INCLUDEPATH += "/home/user/extra headers"
INSTALLS
make install
또는 이와 유사한 설치 절차가 실행될 때 설치될 리소스 목록을 지정합니다. 목록의 각 항목은 일반적으로 설치될 위치에 대한 정보를 제공하는 속성으로 정의됩니다.
예를 들어 다음 target.path
정의는 빌드 대상이 설치될 위치를 설명하고 INSTALLS
할당은 빌드 대상을 설치할 기존 리소스 목록에 추가합니다:
target.path += $$[QT_INSTALL_PLUGINS]/imageformats INSTALLS += target
INSTALLS
에는 여러 값을 취할 수 있는 .CONFIG
멤버가 있습니다:
값 | 설명 |
---|---|
NO_CHECK_EXIST | 설정하지 않으면 qmake는 설치할 파일이 실제로 존재하는지 확인합니다. 파일이 존재하지 않으면 qmake는 설치 규칙을 생성하지 않습니다. qdoc에서 생성된 HTML 파일과 같이 빌드 프로세스의 일부로 생성된 파일을 설치해야 하는 경우 이 구성 값을 사용하십시오. |
nostrip | 설정하면 일반적인 유닉스 스트립 기능이 꺼지고 디버그 정보가 바이너리에 유지됩니다. |
executable | 유닉스에서는 실행 플래그를 설정합니다. |
no_build | make install 을 실행할 때 프로젝트의 빌드가 아직 없는 경우 프로젝트가 먼저 빌드된 다음 설치됩니다. 이 동작을 원하지 않는 경우 이 구성 값을 설정하여 빌드 대상이 설치 대상에 종속성으로 추가되지 않도록 합니다. |
NO_DEFINITE_INSTALL | 프로젝트에 최상위 프로젝트 타깃이 있는 경우 make install 을 수행하면 모든 것이 설치됩니다. 그러나 이 구성 값이 설정된 설치 대상이 있는 경우 기본적으로 설치되지 않습니다. 그런 다음 make install_<file> 이라고 명시적으로 말해야 합니다. |
자세한 내용은 파일 설치하기를 참조하세요.
이 변수는 임베디드 장치에 배포할 추가 파일을 지정하는 데에도 사용됩니다.
JAVA_HOME
참고: 이 변수는 안드로이드 타깃에만 유용합니다.
프로젝트 빌드에 사용되는 JDK/OpenJDK 설치 경로를 지정합니다.
LEXIMPLS
Lex 구현 파일 목록을 지정합니다. 이 변수의 값은 일반적으로 qmake 또는 qmake.conf에서 처리하며 수정할 필요가 거의 없습니다.
LEXOBJECTS
중간 Lex 객체 파일의 이름을 지정합니다. 이 변수의 값은 일반적으로 qmake에 의해 처리되며 수정할 필요가 거의 없습니다.
LEXSOURCES
Lex 소스 파일 목록을 지정합니다. 모든 종속성, 헤더 및 소스 파일은 이러한 렉스 파일을 빌드하기 위해 프로젝트에 자동으로 추가됩니다.
예를 들어
LEXSOURCES = lexer.l
LIBS
프로젝트에 링크할 라이브러리 목록을 지정합니다. Unix -l
(라이브러리) 및 -L(라이브러리 경로) 플래그를 사용하면 qmake는 Windows에서 라이브러리를 올바르게 처리합니다(즉, 라이브러리의 전체 경로를 링커에 전달합니다). qmake가 -l
lib가 있는 디렉터리를 찾으려면 라이브러리가 존재해야 합니다.
예를 들어
unix:LIBS += -L/usr/local/lib -lmath win32:LIBS += c:/mylibs/math.lib
공백이 포함된 경로를 지정하려면 공백에 설명된 기법을 사용하여 경로를 따옴표로 묶습니다.
win32:LIBS += "C:/mylibs/extra libs/extra.lib" unix:LIBS += "-L/home/user/extra libs" -lextra
기본적으로 LIBS
에 저장된 라이브러리 목록은 사용되기 전에 고유 이름 목록으로 축소됩니다. 이 동작을 변경하려면 CONFIG 변수에 no_lflags_merge
옵션을 추가하세요:
CONFIG += no_lflags_merge
LIBS_PRIVATE
프로젝트에 비공개로 링크할 라이브러리 목록을 지정합니다. 이 변수의 동작은 LIBS와 동일하지만, Unix용으로 빌드된 공유 라이브러리 프로젝트는 링크 인터페이스에 이러한 종속성을 노출하지 않는다는 점이 다릅니다.
즉, 프로젝트 C가 라이브러리 A에 비공개로 종속된 라이브러리 B에 종속되어 있지만 C도 A의 심볼을 직접 사용하려는 경우 명시적으로 A에 링크해야 한다는 것입니다. 다르게 말하면, 비공개로 연결된 라이브러리는 빌드 시점에 일시적으로 노출되지 않습니다.
LITERAL_HASH
이 변수는 파일 이름의 일부 또는 외부 애플리케이션에 전달되는 문자열 등 변수 선언에 리터럴 해시 문자(#
)가 필요할 때마다 사용됩니다.
예를 들어
# To include a literal hash character, use the $$LITERAL_HASH variable: urlPieces = http://doc.qt.io/qt-5/qtextdocument.html pageCount message($$join(urlPieces, $$LITERAL_HASH))
LITERAL_HASH
이런 식으로 #
문자를 사용하면 message()
함수가 콘솔에 출력할 URL을 구성하는 데 사용할 수 있습니다.
MAKEFILE
생성된 메이크파일의 이름을 지정합니다. 이 변수의 값은 일반적으로 qmake 또는 qmake.conf에서 처리하며 수정할 필요가 거의 없습니다.
메이크파일_제너레이터
메이크파일을 생성할 때 사용할 메이크파일 생성기의 이름을 지정합니다. 이 변수의 값은 일반적으로 qmake가 내부적으로 처리하며 수정할 필요가 거의 없습니다.
MSVCPROJ_*
이 변수는 qmake에서 내부적으로 처리되며 수정하거나 활용하지 않아야 합니다.
MOC_DIR
모든 중간 moc 파일이 위치할 디렉터리를 지정합니다.
예를 들어
unix:MOC_DIR = ../myproject/tmp win32:MOC_DIR = c:/myproject/tmp
objective_headers
프로젝트의 Objective-C++ 헤더 파일을 정의합니다.
qmake는 헤더에 있는 클래스에서 moc가 필요한지 자동으로 감지하고, moc 파일을 생성하고 링크하기 위해 프로젝트에 적절한 종속성과 파일을 추가합니다.
이는 HEADERS 변수와 유사하지만 생성된 moc 파일을 Objective-C++ 컴파일러로 컴파일할 수 있게 해줍니다.
OBJECTIVE_SOURCES도 참조하세요.
objective_sources
프로젝트에 있는 모든 Objective-C/C++ 소스 파일의 이름을 지정합니다.
이 변수는 이제 더 이상 사용되지 않으며, Objective-C/C++ 파일(.m 및 .mm)을 SOURCES 변수에 추가할 수 있습니다.
OBJECTIVE_HEADERS도 참조하세요.
OBJECTS
이 변수는 SOURCES 변수에서 자동으로 채워집니다. 각 소스 파일의 확장자는 .o(Unix) 또는 .obj(Win32)로 대체됩니다. 목록에 개체를 추가할 수 있습니다.
OBJECTS_DIR
모든 중간 개체를 배치할 디렉터리를 지정합니다.
예를 들어
unix:OBJECTS_DIR = ../myproject/tmp win32:OBJECTS_DIR = c:/myproject/tmp
post_targetdeps
대상이 종속된 라이브러리를 나열합니다. Visual Studio 및 Xcode 프로젝트 파일용 제너레이터와 같은 일부 백엔드는 이 변수를 지원하지 않습니다. 일반적으로 이 변수는 이러한 빌드 도구에서 내부적으로 지원되며 종속된 정적 라이브러리를 명시적으로 나열하는 데 유용합니다.
이 목록은 모든 빌트인(및 $$PRE_TARGETDEPS) 종속성 뒤에 배치됩니다.
PRE_TARGETDEPS
타깃이 종속된 라이브러리를 나열합니다. Visual Studio 및 Xcode 프로젝트 파일용 제너레이터와 같은 일부 백엔드는 이 변수를 지원하지 않습니다. 일반적으로 이 변수는 이러한 빌드 도구에서 내부적으로 지원되며 종속된 정적 라이브러리를 명시적으로 나열하는 데 유용합니다.
이 목록은 모든 빌트인 종속성 앞에 배치됩니다.
precompiled_header
프로젝트의 컴파일 속도를 높이기 위해 미리 컴파일된 헤더 파일을 생성하기 위한 헤더 파일을 나타냅니다. 사전 컴파일된 헤더는 현재 일부 플랫폼(Windows - 모든 MSVC 프로젝트 유형, Apple - Xcode, Makefile, Unix - gcc 3.3 이상)에서만 지원됩니다.
PWD
현재 파싱 중인 파일이 포함된 디렉터리로 연결되는 전체 경로를 지정합니다. 섀도 빌드를 지원하기 위해 프로젝트 파일을 작성할 때 소스 트리 내의 파일을 참조할 때 유용할 수 있습니다.
프로파일_PWD_도 참조하세요.
참고: 이 변수 값을 덮어쓰지 마세요.
OUT_PWD
qmake가 생성된 메이크파일을 저장하는 디렉터리로 이어지는 전체 경로를 지정합니다.
참고: 이 변수 값을 덮어쓰지 마세요.
qm_files_resource_prefix
리소스 시스템에서 CONFIG += embed_translations로 .qm
파일을 사용할 수 있는 디렉터리를 지정합니다.
기본값은 :/i18n/
입니다.
qm_files_install_path
CONFIG += lrelease에 의해 생성된 .qm
파일이 설치될 대상 디렉터리를 지정합니다. CONFIG += embed_translations가 설정되어 있으면 영향을 미치지 않습니다.
qml_import_path
이 변수는 Qt Creator. Qt 설치 외부에 보관되는 추가 모듈이 있는 경우 여기에 해당 모듈의 경로를 지정할 수 있습니다.
자세한 내용은 Qt Creator: 플러그인과 함께 QML 모듈 사용하기를 참조하십시오.
QMLPATHS
QML 모듈 트리의 루트 디렉터리를 가리키는 가져오기 경로 목록을 기대합니다. 예를 들어 QML 모듈에 대한 사용자 지정 위치가 있는 경우 여기에 지정할 수 있습니다.
참고: QMLPATHS의 경로 항목은 QML 모듈 트리의 루트 디렉터리를 가리킵니다. 이것이 QML 엔진이 이해하는 가져오기 경로의 개념입니다. QML_IMPORT_PATH
환경 변수를 통해 QML 애플리케이션에 동일한 경로를 전달할 수 있지만 QML_IMPORT_PATH qmake 변수의 예상 내용과는 다릅니다. 후자는 개별 모듈에 대한 경로가 Qt Creator 에서만 처리되기를 기대합니다.
참고: QMLPATHS의 내용은 애플리케이션에 자동으로 전달되지 않습니다. 오히려 빌드 시에만 사용됩니다. 특히 qmlimportscanner는 이를 사용하여 애플리케이션에서 가져온 것으로 표시해야 할 수 있는 QML 모듈을 찾습니다.
QMAKE
qmake 프로그램 자체의 이름을 지정하며 생성된 메이크파일에 배치됩니다. 이 변수의 값은 일반적으로 qmake 또는 qmake.conf에 의해 처리되며 수정할 필요가 거의 없습니다.
QMAKESPEC
메이크파일을 생성할 때 사용되는 qmake 구성의 전체 경로를 포함하는 시스템 변수입니다. 이 변수의 값은 자동으로 계산됩니다.
참고: 이 변수의 값을 덮어쓰지 마세요.
qmake_apple_device_archs
참고: 이 변수는 macOS에서만 사용됩니다.
빌드할 아키텍처 목록을 지정합니다. 기본적으로 프로젝트는 개발 머신의 아키텍처에 맞게 빌드됩니다. 이 변수를 사용하면 기본값을 재정의하고 다른 아키텍처에 맞게 빌드하거나 다중 아키텍처 바이너리를 만들 수 있습니다.
이 변수는 일반적으로 명령줄이나 프로젝트 파일에서 지정합니다.
자세한 내용은 macOS용 Qt를 참조하십시오.
QMAKE_AR_CMD
참고: 이 변수는 유닉스 플랫폼에서만 사용됩니다.
공유 라이브러리를 만들 때 실행할 명령을 지정합니다. 이 변수의 값은 일반적으로 qmake 또는 qmake.conf에서 처리되며 수정할 필요가 거의 없습니다.
qmake_bundle_data
참고: 이 변수는 macOS, iOS, tvOS 및 watchOS에서만 사용됩니다.
라이브러리 번들과 함께 설치될 데이터를 지정하며, 헤더 파일 모음을 지정하는 데 자주 사용됩니다.
예를 들어 다음 줄은 프레임워크와 함께 제공된 헤더에 대한 정보가 포함된 그룹에 path/to/header_one.h
및 path/to/header_two.h
을 추가합니다:
FRAMEWORK_HEADERS.version = Versions FRAMEWORK_HEADERS.files = path/to/header_one.h path/to/header_two.h FRAMEWORK_HEADERS.path = Headers QMAKE_BUNDLE_DATA += FRAMEWORK_HEADERS
마지막 줄은 라이브러리 번들과 함께 설치될 리소스 컬렉션에 헤더에 대한 정보를 추가합니다.
라이브러리 번들은 lib_bundle
옵션이 CONFIG 변수에 추가되면 생성됩니다.
라이브러리 번들 생성에 대한 자세한 내용은 플랫폼 참고 사항을 참조하세요.
프로젝트에서 이 변수를 사용하여 애플리케이션 번역 파일을 번들로 묶을 수도 있습니다. 정확한 구문은 프로젝트가 Xcode의 레거시 빌드 시스템을 사용하는지 또는 새 빌드 시스템을 사용하는지에 따라 다릅니다.
예를 들어 다음 프로젝트 스니펫이 레거시 빌드 시스템을 사용하여 빌드된 경우입니다:
translations_en.files = $$PWD/en.lproj/InfoPlist.strings translations_en.path = en.lproj QMAKE_BUNDLE_DATA += translations_en
Xcode는 InfoPlist.strings
의 원래 위치를 무시하고 파일이 제공된 translations_en.path
경로 아래의 Resources
번들 디렉터리에 배치됩니다. Resources/en.lproj/InfoPlist.strings
새 빌드 시스템에서는 파일의 상대 위치가 유지되므로 파일이 다음과 같이 잘못 배치됩니다. Resources/en.lproj/en.lproj/InfoPlist.strings
올바른 파일 배치를 위해 프로젝트에서 원본 파일을 하위 디렉터리에 있지 않도록 이동하거나 translations_en.path
변수를 지정하지 않도록 선택할 수 있습니다.
# Approach 1 translations_en.files = $$PWD/InfoPlist.strings translations_en.path = en.lproj # Approach 2 translations_de.files = $$PWD/de.lproj/InfoPlist.strings QMAKE_BUNDLE_DATA += translations_en translations_de
번역 파일을 번들링할 때 Xcode 빌드 시스템의 동작이 어떻게 변경되었는지에 대한 자세한 내용은 QTBUG-98417을 참조하십시오.
qmake_bundle_extension
참고: 이 변수는 macOS, iOS, tvOS 및 watchOS에서만 사용됩니다.
라이브러리 번들에 사용할 확장자를 지정합니다. 이를 통해 표준 .framework
디렉토리 이름 확장자 대신 사용자 지정 확장자를 사용하여 프레임워크를 만들 수 있습니다.
예를 들어 다음 정의는 .myframework
확장자를 가진 프레임워크를 생성합니다:
QMAKE_BUNDLE_EXTENSION = .myframework
QMAKE_CC
C 소스 코드가 포함된 프로젝트를 빌드할 때 사용할 C 컴파일러를 지정합니다. 컴파일러 실행 파일의 파일 이름만 지정하면 되는데, Makefile이 처리될 때 PATH
변수에 포함된 경로에 있는 파일 이름만 지정하면 됩니다.
QMAKE_CFLAGS
프로젝트 빌드를 위한 C 컴파일러 플래그를 지정합니다. 이 변수의 값은 일반적으로 qmake 또는 qmake.conf에서 처리하며 수정할 필요가 거의 없습니다. 디버그 및 릴리스 모드와 관련된 플래그는 각각 QMAKE_CFLAGS_DEBUG
및 QMAKE_CFLAGS_RELEASE
변수를 수정하여 조정할 수 있습니다.
qmake_cflags_debug
디버그 빌드에 대한 C 컴파일러 플래그를 지정한다. 이 변수의 값은 일반적으로 qmake 또는 qmake.conf에서 처리하며 수정할 필요가 거의 없습니다.
qmake_cflags_release
릴리스 빌드에 대한 C 컴파일러 플래그를 지정합니다. 이 변수의 값은 일반적으로 qmake 또는 qmake.conf에 의해 처리되며 수정할 필요가 거의 없습니다.
qmake_cflags_release_with_debuginfo
CONFIG
에서 force_debug_info
이 설정된 릴리스 빌드에 대한 C 컴파일러 플래그를 지정합니다. 이 변수의 값은 일반적으로 qmake 또는 qmake.conf에서 처리하며 수정할 필요가 거의 없습니다.
qmake_cflags_shlib
참고: 이 변수는 Unix 플랫폼에서만 사용됩니다.
공유 라이브러리 생성을 위한 컴파일러 플래그를 지정합니다. 이 변수의 값은 일반적으로 qmake 또는 qmake.conf에서 처리하며 수정할 필요가 거의 없습니다.
qmake_cflags_thread
멀티스레드 애플리케이션을 생성하기 위한 컴파일러 플래그를 지정합니다. 이 변수의 값은 일반적으로 qmake 또는 qmake.conf에서 처리하며 수정할 필요가 거의 없습니다.
qmake_cflags_warn_off
이 변수는 warn_off
CONFIG 옵션이 설정된 경우에만 사용됩니다. 이 변수의 값은 일반적으로 qmake 또는 qmake.conf에 의해 처리되며 수정할 필요가 거의 없습니다.
qmake_cflags_warn_on
이 변수는 warn_on
CONFIG 옵션이 설정된 경우에만 사용됩니다. 이 변수의 값은 일반적으로 qmake 또는 qmake.conf에 의해 처리되며 수정할 필요가 거의 없습니다.
QMAKE_CLEAN
생성된 파일 목록(예: moc 및 uic 기준)과 make clean
에서 제거할 오브젝트 파일을 지정합니다.
QMAKE_CXX
C++ 소스 코드가 포함된 프로젝트를 빌드할 때 사용할 C++ 컴파일러를 지정합니다. 컴파일러 실행 파일의 파일 이름만 지정하면 되는데, Makefile이 처리될 때 PATH
변수에 포함된 경로에 있는 파일 이름만 지정하면 됩니다.
QMAKE_CXXFLAGS
프로젝트 빌드를 위한 C++ 컴파일러 플래그를 지정합니다. 이 변수의 값은 일반적으로 qmake 또는 qmake.conf에서 처리하며 수정할 필요가 거의 없습니다. 디버그 및 릴리스 모드와 관련된 플래그는 각각 QMAKE_CXXFLAGS_DEBUG
및 QMAKE_CXXFLAGS_RELEASE
변수를 수정하여 조정할 수 있습니다.
qmake_cxxflags_debug
디버그 빌드에 대한 C++ 컴파일러 플래그를 지정합니다. 이 변수의 값은 일반적으로 qmake 또는 qmake.conf에서 처리하며 수정할 필요가 거의 없습니다.
qmake_cxxflags_release
릴리스 빌드에 대한 C++ 컴파일러 플래그를 지정합니다. 이 변수의 값은 일반적으로 qmake 또는 qmake.conf에 의해 처리되며 수정할 필요가 거의 없습니다.
qmake_cxxflags_release_with_debuginfo
CONFIG
에서 force_debug_info
이 설정된 릴리스 빌드에 대한 C++ 컴파일러 플래그를 지정합니다. 이 변수의 값은 일반적으로 qmake 또는 qmake.conf에서 처리하며 수정할 필요가 거의 없습니다.
qmake_cxxflags_shlib
공유 라이브러리 생성을 위한 C++ 컴파일러 플래그를 지정합니다. 이 변수의 값은 일반적으로 qmake 또는 qmake.conf에서 처리하며 수정할 필요가 거의 없습니다.
qmake_cxxflags_thread
멀티스레드 애플리케이션을 생성하기 위한 C++ 컴파일러 플래그를 지정합니다. 이 변수의 값은 일반적으로 qmake 또는 qmake.conf에 의해 처리되며 수정할 필요가 거의 없습니다.
qmake_cxxflags_warn_off
컴파일러 경고를 억제하기 위한 C++ 컴파일러 플래그를 지정합니다. 이 변수의 값은 일반적으로 qmake 또는 qmake.conf에서 처리하며 수정할 필요가 거의 없습니다.
qmake_cxxflags_warn_on
컴파일러 경고를 생성하기 위한 C++ 컴파일러 플래그를 지정합니다. 이 변수의 값은 일반적으로 qmake 또는 qmake.conf에서 처리하며 수정할 필요가 거의 없습니다.
qmake_개발팀
참고: 이 변수는 macOS, iOS, tvOS 및 watchOS에서만 사용됩니다.
인증서 서명 및 프로비저닝 프로필에 사용할 개발 팀의 식별자입니다.
qmake_distclean
make distclean
에서 제거할 파일 목록을 지정합니다.
qmake_extension_shlib
공유 라이브러리의 확장자를 포함합니다. 이 변수의 값은 일반적으로 qmake 또는 qmake.conf에서 처리하며 수정할 필요가 거의 없습니다.
참고: 확장자를 변경하는 플랫폼별 변수는 이 변수의 내용을 재정의합니다.
qmake_extension_staticlib
공유 정적 라이브러리의 확장자를 포함합니다. 이 변수의 값은 일반적으로 qmake 또는 qmake.conf에서 처리하며 수정할 필요가 거의 없습니다.
QMAKE_EXT_MOC
포함된 moc 파일에 사용되는 확장자를 포함합니다.
파일 확장명도 참조하세요.
QMAKE_EXT_UI
Qt Widgets Designer UI 파일에 사용되는 확장자를 포함합니다.
파일 확장명도 참조하십시오.
QMAKE_EXT_PRL
생성된 PRL 파일에 사용되는 확장명을 포함합니다.
파일 확장자, 라이브러리 종속성을 참조하십시오.
QMAKE_EXT_LEX
Lex에 지정된 파일에 사용되는 확장명을 포함합니다.
QMAKE_EXT_YACC
Yacc에 지정된 파일에 사용되는 확장자를 포함합니다.
파일 확장명, YACCSOURCES도 참조하세요.
QMAKE_EXT_OBJ
생성된 객체 파일에 사용되는 확장자를 포함합니다.
파일 확장명도 참조하십시오.
QMAKE_EXT_CPP
C++ 소스 코드로 해석되어야 하는 파일에 대한 접미사를 포함합니다.
파일 확장자도 참조하십시오.
QMAKE_EXT_H
C 헤더 파일로 해석되어야 하는 파일에 대한 접미사를 포함합니다.
파일 확장자도 참조하십시오.
QMAKE_EXTRA_COMPILERS
추가 컴파일러 또는 전처리기 목록을 지정합니다.
컴파일러 추가도 참고한다.
qmake_extra_targets
추가 qmake 대상 목록을 지정합니다.
사용자 지정 대상 추가도 참조하십시오.
qmake_failed_requirements
실패한 요구 사항 목록을 포함합니다. 이 변수의 값은 qmake에 의해 설정되며 수정할 수 없습니다.
requires() 및 REQUIRES도 참조하십시오.
qmake_프레임워크_번들_이름
참고: 이 변수는 macOS, iOS, tvOS 및 watchOS에서만 사용됩니다.
프레임워크 프로젝트에서 이 변수에는 빌드되는 프레임워크에 사용할 이름이 포함됩니다.
기본적으로 이 변수에는 TARGET 변수와 동일한 값이 포함됩니다.
프레임워크 및 라이브러리 번들 만들기에 대한 자세한 내용은 프레임워크 만들 기를 참조하세요.
qmake_프레임워크_버전
참고: 이 변수는 macOS, iOS, tvOS 및 watchOS에서만 사용됩니다.
빌드 대상이 macOS, iOS, tvOS 또는 watchOS 프레임워크인 프로젝트의 경우 이 변수는 빌드되는 프레임워크에 적용될 버전 번호를 지정하는 데 사용됩니다.
기본적으로 이 변수에는 VERSION 변수와 동일한 값이 포함됩니다.
프레임워크 만들기에 대한 자세한 내용은 프레임워크 만들기를 참조하세요.
QMAKE_HOST
qmake를 실행하는 호스트 시스템에 대한 정보를 제공합니다. 예를 들어 QMAKE_HOST.arch
에서 호스트 머신 아키텍처를 검색할 수 있습니다.
키 | 값 |
---|---|
.arch | 호스트 아키텍처 |
.os | 호스트 OS |
.cpu_count | 사용 가능한 CPU 수 |
.name | 호스트 컴퓨터 이름 |
.version | 호스트 OS 버전 번호 |
.version_string | 호스트 OS 버전 문자열 |
win32-g++:contains(QMAKE_HOST.arch, x86_64):{ message("Host is 64bit") ... }
QMAKE_INCDIR
INCLUDEPATH에 추가되는 시스템 헤더 경로 목록을 지정합니다. 이 변수의 값은 일반적으로 qmake 또는 qmake.conf에서 처리하며 수정할 필요가 거의 없습니다.
qmake_incdir_egl
OpenGL/ES 또는 OpenVG를 지원하는 타겟을 빌드할 때 INCLUDEPATH에 추가할 EGL 헤더 파일의 위치를 지정합니다. 이 변수의 값은 일반적으로 qmake 또는 qmake.conf에서 처리하며 수정할 필요가 거의 없습니다.
qmake_incdir_opengl
OpenGL을 지원하는 타겟을 빌드할 때 INCLUDEPATH에 추가할 OpenGL 헤더 파일의 위치를 지정합니다. 이 변수의 값은 일반적으로 qmake 또는 qmake.conf에서 처리하며 수정할 필요가 거의 없습니다.
OpenGL 구현이 EGL을 사용하는 경우(대부분의 OpenGL/ES 시스템), QMAKE_INCDIR_EGL도 설정해야 할 수 있습니다.
QMAKE_INCDIR_OPENGL_ES2
이 변수는 OpenGL ES 2를 지원하는 타겟을 빌드할 때 INCLUDEPATH에 추가할 OpenGL 헤더 파일의 위치를 지정합니다.
이 변수의 값은 일반적으로 qmake 또는 qmake.conf에서 처리하며 수정할 필요가 거의 없습니다.
OpenGL 구현이 EGL을 사용하는 경우(대부분의 OpenGL/ES 시스템), QMAKE_INCDIR_EGL도 설정해야 할 수 있습니다.
QMAKE_INCDIR_OPENVG
OpenVG를 지원하는 타겟을 빌드할 때 INCLUDEPATH에 추가할 OpenVG 헤더 파일의 위치를 지정합니다. 이 변수의 값은 일반적으로 qmake 또는 qmake.conf에서 처리하며 수정할 필요가 거의 없습니다.
OpenVG 구현에서 EGL을 사용하는 경우 QMAKE_INCDIR_EGL도 설정해야 할 수 있습니다.
qmake_incdir_x11
참고: 이 변수는 Unix 플랫폼에서만 사용됩니다.
X11 타겟을 빌드할 때 INCLUDEPATH에 추가할 X11 헤더 파일 경로의 위치를 지정합니다. 이 변수의 값은 일반적으로 qmake 또는 qmake.conf에서 처리하며 수정할 필요가 거의 없습니다.
qmake_info_plist
참고: 이 변수는 macOS, iOS, tvOS 및 watchOS 플랫폼에서만 사용됩니다.
macOS, iOS, tvOS 및 watchOS 애플리케이션 번들에 포함할 속성 목록 파일( .plist
)의 이름을 지정합니다.
.plist
파일에서 qmake가 관련 값으로 대체할 몇 가지 변수를 정의할 수 있습니다:
플레이스홀더 | Effect |
---|---|
${PRODUCT_BUNDLE_IDENTIFIER} , @BUNDLEIDENTIFIER@ | 대상 번들의 번들 식별자 문자열로 확장됩니다(예: com.example.myapp ). QMAKE_TARGET_BUNDLE_PREFIX 와 QMAKE_BUNDLE 의 값을 마침표(. )로 구분하여 연결하여 결정됩니다. QMAKE_BUNDLE 값은 QMAKE_APPLICATION_BUNDLE_NAME , QMAKE_PLUGIN_BUNDLE_NAME 또는 QMAKE_FRAMEWORK_BUNDLE_NAME 에서 파생됩니다. 프로젝트에서 직접 설정해서는 안 됩니다. |
${EXECUTABLE_NAME} , @EXECUTABLE@ , @LIBRARY@ | 생성하는 대상 유형에 따라 QMAKE_APPLICATION_BUNDLE_NAME, QMAKE_PLUGIN_BUNDLE_NAME 또는 QMAKE_FRAMEWORK_BUNDLE_NAME의 값과 같으며, 이전 값이 설정되지 않은 경우 TARGET입니다. |
${ASSETCATALOG_COMPILER_APPICON_NAME} , @ICON@ | 아이콘의 값으로 확장됩니다. |
${QMAKE_PKGINFO_TYPEINFO} , @TYPEINFO@ | QMAKE_PKGINFO_TYPEINFO의 값으로 확장됩니다. |
${QMAKE_FULL_VERSION} , @FULL_VERSION@ | 세 가지 버전 구성 요소로 표현된 VERSION의 값으로 확장됩니다. |
${QMAKE_SHORT_VERSION} , @SHORT_VERSION@ | 두 개의 버전 구성 요소로 표현된 VERSION의 값으로 확장합니다. |
${MACOSX_DEPLOYMENT_TARGET} | QMAKE_MACOSX_DEPLOYMENT_TARGET의 값으로 확장합니다. |
${IPHONEOS_DEPLOYMENT_TARGET} | QMAKE_IPHONEOS_DEPLOYMENT_TARGET의 값으로 확장됩니다. |
${TVOS_DEPLOYMENT_TARGET} | QMAKE_TVOS_DEPLOYMENT_TARGET의 값으로 확장됩니다. |
${WATCHOS_DEPLOYMENT_TARGET} | QMAKE_WATCHOS_DEPLOYMENT_TARGET의 값으로 확장됩니다. |
${IOS_LAUNCH_SCREEN} | QMAKE_IOS_LAUNCH_SCREEN의 값으로 확장됩니다. |
참고: Xcode 생성기를 사용하는 경우 위의 ${var}
스타일 플레이스홀더는 Xcode 빌드 시스템에 의해 직접 대체되며 qmake에서 처리되지 않습니다. @var@
스타일 플레이스홀더는 qmake 메이크파일 생성기에서만 작동하며 Xcode 생성기에서는 작동하지 않습니다.
iOS용으로 빌드하고 .plist
파일에 NSPhotoLibraryUsageDescription
키가 포함되어 있는 경우 qmake는 사진 액세스 지원을 추가하는 추가 플러그인을 빌드에 포함합니다(예: QFile/QFileDialog). 이 키에 대한 자세한 내용은 Apple의 Info.plist 문서를 참조하세요.
참고: 대부분의 경우 기본값인 Info.plist
으로 충분합니다.
qmake_ios_deployment_target
참고: 이 변수는 iOS 플랫폼에서만 사용됩니다.
애플리케이션이 지원하는 iOS의 하드 최소 버전을 지정합니다.
자세한 내용은 지원되는 iOS 버전 표현하기를 참조하세요.
qmake_ios_launch_screen
참고: 이 변수는 iOS 플랫폼에서만 사용됩니다.
애플리케이션에서 사용하는 시작 화면을 지정합니다. 이 변수를 설정하지 않으면 기본 실행 화면이 사용됩니다.
QMAKE_LFLAGS
링커에 전달되는 일반 플래그 집합을 지정합니다. 특정 플랫폼이나 프로젝트 유형에 사용되는 플래그를 변경해야 하는 경우 이 변수 대신 해당 목적에 맞는 특수 변수 중 하나를 사용하십시오.
qmake_lflags_console
참고: 이 변수는 Windows에서만 사용됩니다.
콘솔 프로그램 빌드를 위한 링커 플래그를 지정합니다. 이 변수의 값은 일반적으로 qmake 또는 qmake.conf에서 처리하며 수정할 필요가 거의 없습니다.
qmake_lflags_debug
디버그 빌드에 대한 링커 플래그를 지정합니다. 이 변수의 값은 일반적으로 qmake 또는 qmake.conf에 의해 처리되며 수정할 필요가 거의 없습니다.
qmake_lflags_plugin
플러그인 빌드를 위한 링커 플래그를 지정합니다. 이 변수의 값은 일반적으로 qmake 또는 qmake.conf에 의해 처리되며 수정할 필요가 거의 없습니다.
qmake_lflags_rpath
참고: 이 변수는 Unix 플랫폼에서만 사용됩니다.
QMAKE_RPATHDIR의 값을 사용하는 데 필요한 링커 플래그를 지정합니다.
이 변수의 값은 일반적으로 qmake 또는 qmake.conf에서 처리하며 수정할 필요가 거의 없습니다.
qmake_lflags_rel_rpath
QMAKE_RPATHDIR에서 상대 경로를 활성화하는 데 필요한 링커 플래그를 지정합니다.
이 변수의 값은 일반적으로 qmake 또는 qmake.conf에서 처리하며 수정할 필요가 거의 없습니다.
qmake_rel_rpath_base
동적 링커가 참조하는 실행 파일 또는 라이브러리의 위치로 이해하는 문자열을 지정합니다.
이 변수의 값은 일반적으로 qmake 또는 qmake.conf에서 처리하며 수정할 필요가 거의 없습니다.
qmake_lflags_rpathlink
QMAKE_RPATHLINKDIR의 값을 사용하는 데 필요한 링커 플래그를 지정합니다.
이 변수의 값은 일반적으로 qmake 또는 qmake.conf에서 처리하며 수정할 필요가 거의 없습니다.
qmake_lflags_release
릴리스 빌드에 대한 링커 플래그를 지정합니다. 이 변수의 값은 일반적으로 qmake 또는 qmake.conf에 의해 처리되며 수정할 필요가 거의 없습니다.
qmake_lflags_release_with_debuginfo
CONFIG
에서 force_debug_info
이 설정된 릴리스 빌드에 대한 링커 플래그를 지정합니다. 이 변수의 값은 일반적으로 qmake 또는 qmake.conf에서 처리하며 수정할 필요가 거의 없습니다.
qmake_lflags_app
애플리케이션 빌드를 위한 링커 플래그를 지정합니다. 이 변수의 값은 일반적으로 qmake 또는 qmake.conf에 의해 처리되며 수정할 필요가 거의 없습니다.
qmake_lflags_shlib
공유 라이브러리 빌드에 사용되는 링커 플래그를 지정합니다. 이 변수의 값은 일반적으로 qmake 또는 qmake.conf에서 처리하며 수정할 필요가 거의 없습니다.
qmake_lflags_soname
.so 또는 .dll과 같은 공유 객체의 이름을 설정하기 위한 링커 플래그를 지정합니다. 이 변수의 값은 일반적으로 qmake 또는 qmake.conf에서 처리하며 수정할 필요가 거의 없습니다.
qmake_lflags_thread
멀티스레드 프로젝트를 빌드하기 위한 링커 플래그를 지정합니다. 이 변수의 값은 일반적으로 qmake 또는 qmake.conf에서 처리하며 수정할 필요가 거의 없습니다.
qmake_lflags_windows
참고: 이 변수는 Windows에서만 사용됩니다.
Windows GUI 프로젝트(즉, 콘솔이 아닌 애플리케이션)를 빌드하기 위한 링커 플래그를 지정합니다. 이 변수의 값은 일반적으로 qmake 또는 qmake.conf에서 처리하며 수정할 필요가 거의 없습니다.
QMAKE_LIBDIR
모든 프로젝트의 라이브러리 검색 경로 목록을 지정합니다. 이 변수의 값은 일반적으로 qmake 또는 qmake.conf에 의해 처리되며 수정할 필요가 거의 없습니다.
프로젝트 파일에 추가 검색 경로를 지정하려면 대신 LIBS를 이와 같이 사용하세요:
LIBS += -L/path/to/libraries
qmake_libdir_post
모든 프로젝트에 대한 시스템 라이브러리 검색 경로 목록을 지정합니다. 이 변수의 값은 일반적으로 qmake 또는 qmake.conf에서 처리하며 수정할 필요가 거의 없습니다.
qmake_libdir_flags
참고: 이 변수는 Unix 플랫폼에서만 사용됩니다.
접두사가 -L인 모든 라이브러리 디렉터리의 위치를 지정합니다. 이 변수의 값은 일반적으로 qmake 또는 qmake.conf에서 처리하며 수정할 필요가 거의 없습니다.
qmake_libdir_egl
EGL이 OpenGL/ES 또는 OpenVG와 함께 사용되는 경우 EGL 라이브러리 디렉터리의 위치를 지정합니다. 이 변수의 값은 일반적으로 qmake 또는 qmake.conf에서 처리하며 수정할 필요가 거의 없습니다.
qmake_libdir_opengl
OpenGL 라이브러리 디렉터리 위치를 지정합니다. 이 변수의 값은 일반적으로 qmake 또는 qmake.conf에 의해 처리되며 수정할 필요가 거의 없습니다.
OpenGL 구현에서 EGL을 사용하는 경우(대부분의 OpenGL/ES 시스템), QMAKE_LIBDIR_EGL도 설정해야 할 수 있습니다.
QMAKE_LIBDIR_OPENVG
OpenVG 라이브러리 디렉터리의 위치를 지정합니다. 이 변수의 값은 일반적으로 qmake 또는 qmake.conf에서 처리하며 수정할 필요가 거의 없습니다.
OpenVG 구현이 EGL을 사용하는 경우 QMAKE_LIBDIR_EGL도 설정해야 할 수 있습니다.
QMAKE_LIBDIR_X11
참고: 이 변수는 Unix 플랫폼에서만 사용됩니다.
X11 라이브러리 디렉터리의 위치를 지정합니다. 이 변수의 값은 일반적으로 qmake 또는 qmake.conf에서 처리하며 수정할 필요가 거의 없습니다.
QMAKE_LIBS
각 프로젝트가 링크해야 하는 추가 라이브러리를 지정합니다. 이 변수의 값은 일반적으로 qmake 또는 qmake.conf에 의해 처리되며 수정할 필요가 거의 없습니다.
프로젝트 파일에 라이브러리를 지정하려면 대신 LIBS를 사용한다.
qmake_libs_private
각 프로젝트가 링크해야 하는 추가 비공개 라이브러리를 지정합니다. 이 변수의 값은 일반적으로 qmake 또는 qmake.conf에서 처리하며 수정할 필요가 거의 없습니다.
라이브러리 프로젝트 파일에 비공개 라이브러리를 지정하려면 대신 LIBS_PRIVATE를 사용하세요.
QMAKE_LIBS_EGL
OpenGL/ES 또는 OpenVG로 Qt를 빌드할 때 모든 EGL 라이브러리를 지정합니다. 이 변수의 값은 일반적으로 qmake 또는 qmake.conf에 의해 처리되며 수정할 필요가 거의 없습니다. 일반적인 값은 -lEGL
입니다.
qmake_libs_opengl
모든 OpenGL 라이브러리를 지정합니다. 이 변수의 값은 일반적으로 qmake 또는 qmake.conf에서 처리하며 수정할 필요가 거의 없습니다.
OpenGL 구현이 EGL을 사용하는 경우(대부분의 OpenGL/ES 시스템), QMAKE_LIBS_EGL도 설정해야 할 수 있습니다.
QMAKE_LIBS_OPENGL_ES1, QMAKE_LIBS_OPENGL_ES2
이 변수는 OpenGL ES 1 및 OpenGL ES 2에 대한 모든 OpenGL 라이브러리를 지정합니다.
이러한 변수의 값은 일반적으로 qmake 또는 qmake.conf에서 처리하며 수정할 필요가 거의 없습니다.
OpenGL 구현에서 EGL을 사용하는 경우(대부분의 OpenGL/ES 시스템), QMAKE_LIBS_EGL도 설정해야 할 수 있습니다.
QMAKE_LIBS_OPENVG
모든 OpenVG 라이브러리를 지정합니다. 이 변수의 값은 일반적으로 qmake 또는 qmake.conf에서 처리하며 수정할 필요가 거의 없습니다. 일반적인 값은 -lOpenVG
입니다.
일부 OpenVG 엔진은 OpenGL 위에 구현됩니다. 이는 구성 시 감지되며 OpenVG 라이브러리가 링크된 모든 곳에 QMAKE_LIBS_OPENGL이 암시적으로 QMAKE_LIBS_OPENVG에 추가됩니다.
OpenVG 구현이 EGL을 사용하는 경우 QMAKE_LIBS_EGL도 설정해야 할 수 있습니다.
QMAKE_LIBS_THREAD
참고: 이 변수는 Unix 플랫폼에서만 사용됩니다.
멀티 스레드 타깃을 빌드할 때 링크해야 하는 모든 라이브러리를 지정합니다. 이 변수의 값은 일반적으로 qmake 또는 qmake.conf에서 처리하며 수정할 필요가 거의 없습니다.
QMAKE_LIBS_X11
참고: 이 변수는 Unix 플랫폼에서만 사용됩니다.
모든 X11 라이브러리를 지정합니다. 이 변수의 값은 일반적으로 qmake 또는 qmake.conf에서 처리하며 수정할 필요가 거의 없습니다.
QMAKE_LIB_FLAG
lib
템플릿이 지정된 경우 이 변수는 비어 있지 않습니다. 이 변수의 값은 일반적으로 qmake 또는 qmake.conf에 의해 처리되며 수정할 필요가 거의 없습니다.
QMAKE_LINK
애플리케이션 기반 프로젝트를 빌드할 때 사용할 링커를 지정합니다. 메이크파일이 처리될 때 PATH
변수에 포함된 경로에 있는 경우 링커 실행 파일의 파일 이름만 지정하면 됩니다. 이 변수의 값은 일반적으로 qmake 또는 qmake.conf에서 처리하며 수정할 필요가 거의 없습니다.
qmake_link_shlib_cmd
공유 라이브러리를 만들 때 실행할 명령을 지정합니다. 이 변수의 값은 일반적으로 qmake 또는 qmake.conf에서 처리하며 수정할 필요가 거의 없습니다.
QMAKE_LN_SHLIB
공유 라이브러리에 대한 링크를 만들 때 실행할 명령을 지정합니다. 이 변수의 값은 일반적으로 qmake 또는 qmake.conf에서 처리하며 수정할 필요가 거의 없습니다.
qmake_lrelease_flags
CONFIG += lrelease를 통해 활성화할 때 lrelease에 전달되는 추가 옵션 목록.
qmake_objective_cflags
프로젝트 빌드를 위한 오브젝티브 C/C++ 컴파일러 플래그를 지정합니다. 이 플래그는 QMAKE_CFLAGS 및 QMAKE_CXXFLAGS와 함께 사용됩니다.
QMAKE_POST_LINK
타깃을 링크한 후 실행할 명령을 지정합니다. 이 변수는 일반적으로 비어 있으므로 아무 것도 실행되지 않습니다.
참고: 이 변수는 Xcode 프로젝트에는 영향을 미치지 않습니다.
QMAKE_PRE_LINK
타깃을 링크하기 전에 실행할 명령을 지정합니다. 이 변수는 일반적으로 비어 있으므로 아무 것도 실행되지 않습니다.
경고: 이 변수는 Xcode 생성기 및 새로운 Xcode 빌드 시스템을 사용할 때는 지원되지 않습니다.
qmake_project_name
참고: 이 변수는 Visual Studio 프로젝트 파일에만 사용됩니다.
IDE용 프로젝트 파일을 생성할 때 프로젝트 이름을 결정합니다. 기본값은 대상 이름입니다. 이 변수의 값은 일반적으로 qmake에서 처리하며 수정할 필요가 거의 없습니다.
qmake_프로비저닝_프로필
참고: 이 변수는 macOS, iOS, tvOS 및 watchOS에서만 사용됩니다.
유효한 프로비저닝 프로필의 UUID입니다. 프로비저닝 프로필을 지정하려면 QMAKE_DEVELOPMENT_TEAM과 함께 사용합니다.
참고: 프로비저닝 프로필을 지정하면 자동 관리 서명이 비활성화됩니다.
QMAKE_MAC_SDK
이 변수는 macOS에서 유니버설 바이너리를 빌드할 때 사용됩니다.
QMAKE_MACOSX_배포_대상
참고: 이 변수는 macOS 플랫폼에서만 사용됩니다.
애플리케이션이 지원하는 macOS의 하드 최소 버전을 지정합니다.
자세한 내용은 macOS 지원 버전을 참조하십시오.
QMAKE_MAKEFILE
생성할 메이크파일의 이름을 지정합니다. 이 변수의 값은 일반적으로 qmake 또는 qmake.conf에서 처리하며 수정할 필요가 거의 없습니다.
QMAKE_QMAKE
qmake 실행 파일의 절대 경로를 포함합니다.
참고: 이 변수 값을 덮어쓰지 마세요.
qmake_resource_flags
이 변수는 빌드 규칙에서 각 빌드 규칙의 Resource Compiler 에 전달되는 옵션 목록을 사용자 정의하는 데 사용됩니다. 예를 들어, 다음 줄은 rcc
가 호출될 때마다 -threshold
및 -compress
옵션이 특정 값으로 사용되도록 합니다:
QMAKE_RESOURCE_FLAGS += -threshold 0 -compress 9
QMAKE_RPATHDIR
참고: 이 변수는 Unix 플랫폼에서만 사용됩니다.
링크 시 실행 파일에 추가되는 라이브러리 경로 목록을 지정하여 런타임에 경로가 우선적으로 검색되도록 합니다.
상대 경로를 지정하면 동적 링커가 참조하는 실행 파일 또는 라이브러리의 위치에 상대적인 것으로 이해하는 형태로 qmake가 경로를 혼합합니다. 이 기능은 일부 플랫폼(현재 리눅스 및 다윈 기반 플랫폼)에서만 지원되며 QMAKE_REL_RPATH_BASE가 설정되어 있는지 확인하여 감지할 수 있습니다.
QMAKE_RPATHLINKDIR
정적 링커가 공유 라이브러리의 암시적 종속성을 검색할 라이브러리 경로 목록을 지정합니다. 자세한 내용은 ld(1)
의 매뉴얼 페이지를 참조하세요.
QMAKE_RUN_CC
객체를 빌드하는 데 필요한 개별 규칙을 지정합니다. 이 변수의 값은 일반적으로 qmake 또는 qmake.conf에서 처리하며 수정할 필요가 거의 없습니다.
qmake_run_cc_imp
오브젝트를 빌드하는 데 필요한 개별 규칙을 지정합니다. 이 변수의 값은 일반적으로 qmake 또는 qmake.conf에 의해 처리되며 수정할 필요가 거의 없습니다.
QMAKE_RUN_CXX
오브젝트를 빌드하는 데 필요한 개별 규칙을 지정합니다. 이 변수의 값은 일반적으로 qmake 또는 qmake.conf에 의해 처리되며 수정할 필요가 거의 없습니다.
qmake_run_cxx_imp
오브젝트를 빌드하는 데 필요한 개별 규칙을 지정합니다. 이 변수의 값은 일반적으로 qmake 또는 qmake.conf에 의해 처리되며 수정할 필요가 거의 없습니다.
qmake_soname_prefix
정의된 경우 이 변수 값은 빌드된 공유 라이브러리의 SONAME
식별자에 앞에 붙일 경로로 사용됩니다. SONAME
은 나중에 동적 링커가 라이브러리를 참조하는 데 사용할 식별자입니다. 일반적으로 이 참조는 라이브러리 이름 또는 전체 라이브러리 경로일 수 있습니다. macOS, iOS, tvOS 및 watchOS에서는 다음 자리 표시자를 사용하여 경로를 상대적으로 지정할 수 있습니다:
플레이스홀더 | Effect |
---|---|
rpath | 현재 프로세스 실행 파일 또는 참조 라이브러리에서 LC_RPATH mach-o 명령으로 정의된 경로로 확장합니다. |
실행 파일 경로 | 현재 프로세스 실행 파일 위치로 확장합니다. |
로더_경로 | 참조 실행 파일 또는 라이브러리 위치로 확장합니다. |
대부분의 경우 @rpath
을 사용하는 것으로 충분하며 권장됩니다:
# <project root>/project.pro QMAKE_SONAME_PREFIX = @rpath
그러나 접두사는 다른 자리 표시자를 사용하거나 다음 중 하나와 같은 절대 경로를 사용하여 지정할 수도 있습니다:
# <project root>/project.pro QMAKE_SONAME_PREFIX = @executable_path/../Frameworks QMAKE_SONAME_PREFIX = @loader_path/Frameworks QMAKE_SONAME_PREFIX = /Library/Frameworks
자세한 내용은 동적 라이브러리 설치 이름에 대한 dyld 문서를 참조하세요.
QMAKE_TARGET
프로젝트 대상의 이름을 지정합니다. 이 변수의 값은 일반적으로 qmake 또는 qmake.conf에서 처리하며 수정할 필요가 거의 없습니다.
qmake_target_company
Windows 전용. 프로젝트 대상의 회사를 지정하며, 애플리케이션의 속성에 회사 이름을 넣을 때 해당되는 경우 사용됩니다. 이 변수는 버전 또는 RC_ICONS 변수가 설정되어 있고 RC_FILE 및 RES_FILE 변수가 설정되어 있지 않은 경우에만 사용됩니다.
qmake_target_description
Windows 전용. 프로젝트 대상에 대한 설명을 지정하며, 해당되는 경우 애플리케이션의 속성에 설명을 넣는 데 사용됩니다. VERSION 또는 RC_ICONS 변수가 설정되어 있고 RC_FILE 및 RES_FILE 변수가 설정되어 있지 않은 경우에만 사용됩니다.
qmake_target
Windows 전용. 프로젝트 대상의 저작권 정보를 지정하며, 해당되는 경우 애플리케이션의 속성에 저작권 정보를 넣는 데 사용됩니다. 이 변수는 버전 또는 RC_ICONS 변수가 설정되어 있고 RC_FILE 및 RES_FILE 변수가 설정되어 있지 않은 경우에만 사용됩니다.
QMAKE_TARGET_PRODUCT
Windows 전용. 프로젝트 대상의 제품을 지정하며, 해당되는 경우 애플리케이션의 속성에 제품을 넣는 데 사용됩니다. 이 변수는 버전 또는 RC_ICONS 변수가 설정되어 있고 RC_FILE 및 RES_FILE 변수가 설정되어 있지 않은 경우에만 사용됩니다.
QMAKE_TARGET_ORIGINAL_FILENAME
Windows만 해당. 프로젝트 대상의 원본 파일 이름을 지정하며, 해당되는 경우 애플리케이션의 속성에 원본 파일 이름을 넣는 데 사용됩니다. 이 변수는 VERSION 또는 RC_ICONS 변수가 설정되어 있고 RC_FILE 및 RES_FILE 변수가 설정되지 않은 경우에만 사용됩니다.
QMAKE_TARGET_INTERNALNAME
Windows 전용. 프로젝트 대상의 내부 이름을 지정하며, 해당되는 경우 애플리케이션의 속성에 내부 이름을 넣는 데 사용됩니다. 이 변수는 버전 또는 RC_ICONS 변수가 설정되어 있고 RC_FILE 및 RES_FILE 변수가 설정되지 않은 경우에만 사용됩니다.
QMAKE_TARGET_COMMENTS
Windows 전용. 프로젝트 대상에 대한 주석을 지정하며, 해당되는 경우 애플리케이션의 속성에 주석을 넣는 데 사용됩니다. 이 변수는 버전 또는 RC_ICONS 변수가 설정되어 있고 RC_FILE 및 RES_FILE 변수가 설정되지 않은 경우에만 사용됩니다.
QMAKE_TARGET_TRADEMARKS
Windows 전용. 프로젝트 대상의 상표 정보를 지정하며, 해당되는 경우 애플리케이션의 속성에 상표 정보를 넣는 데 사용됩니다. 이 변수는 VERSION 또는 RC_ICONS 변수가 설정되어 있고 RC_FILE 및 RES_FILE 변수가 설정되어 있지 않은 경우에만 사용됩니다.
QMAKE_MANIFEST
Windows 전용. 프로젝트 대상의 매니페스트 파일을 지정합니다. RC_FILE 및 RES_FILE 변수가 설정되지 않은 경우에만 사용됩니다. 그렇지 않으면 컴파일러에서 생성된 변수와 충돌할 수 있으므로 CONFIG 변수에서 embed_manifest_exe 및 embed_manifest_dll을 제거하는 것을 잊지 마세요.
qmake_tvos_deployment_target
참고: 이 변수는 tvOS 플랫폼에서만 사용됩니다.
애플리케이션이 지원하는 tvOS의 하드 최소 버전을 지정합니다.
자세한 내용은 지원되는 iOS 버전 표현하기를 참조하세요.
qmake_uic_flags
이 변수는 빌드 규칙에서 각 빌드 규칙의 User Interface Compiler 에 전달되는 옵션 목록을 사용자 정의하는 데 사용됩니다.
qmake_watchos_deployment_target
참고: 이 변수는 watchOS 플랫폼에서만 사용됩니다.
애플리케이션이 지원하는 watchOS의 하드 최소 버전을 지정합니다.
자세한 내용은 지원되는 iOS 버전 표현하기를 참조하세요.
qml_import_major_version
자동 생성된 QML 유형 등록에 사용할 주요 버전을 지정합니다. 자세한 내용은 C++에서 QML 유형 정의하기를 참조하세요.
QML_IMPORT_MINOR_VERSION
C++로 정의된 QML 유형을 자동으로 등록할 때 이 마이너 버전을 사용하여 모듈의 추가 버전을 등록합니다. 일반적으로 등록할 마이너 버전은 메타 객체에서 유추됩니다.
메타 객체가 변경되지 않았고 최신 부 버전 번호가 있는 QML 모듈을 가져오려는 경우 이 변수를 사용할 수 있습니다. 예를 들어 MyModule
메타 객체는 1.1
수준이지만 모듈을 1.3
로 가져오려는 경우입니다.
QML_IMPORT_VERSION
QML_IMPORT_MAJOR_VERSION 및 QML_IMPORT_MINOR_VERSION을 <major>.<minor>
버전 문자열로 지정합니다.
QML_IMPORT_NAME
자동 생성된 QML 유형 등록에 사용할 모듈 이름을 지정합니다. 자세한 내용은 C++에서 QML 유형 정의하기를 참조하세요.
QML_외래_metatypes
qmltypes 파일을 생성할 때 고려할 메타타입이 있는 추가 JSON 파일을 지정합니다. 외부 라이브러리가 직접 또는 다른 유형의 기본 유형이나 프로퍼티로 QML에 노출되는 유형을 제공할 때 이 옵션을 사용합니다. Qt 유형은 자동으로 고려되므로 여기에 추가할 필요가 없습니다.
QT
프로젝트에서 사용하는 Qt 모듈을 지정합니다. 각 모듈에 추가할 값은 모듈 설명서를 참조하십시오.
C++ 구현 수준에서 Qt 모듈을 사용하면 해당 헤더를 포함할 수 있게 되고 바이너리에 링크됩니다.
기본적으로 QT
에는 core
과 gui
이 포함되어 있어 추가 구성 없이 표준 GUI 애플리케이션을 빌드할 수 있습니다.
모듈 없이 프로젝트를 빌드하려면 Qt GUI 모듈 없이 프로젝트를 빌드하려면 "-=" 연산자를 사용하여 gui
값을 제외해야 합니다. 다음 줄은 최소한의 Qt 프로젝트가 빌드되는 결과를 가져옵니다:
QT -= gui # Only the core module is used.
프로젝트가 Qt Widgets Designer 플러그인인 경우, uiplugin
값을 사용하여 프로젝트를 라이브러리로 빌드하되 Qt Widgets Designer 에 대한 특정 플러그인을 지원하도록 지정합니다. 자세한 내용은 플러그인 빌드 및 설치를 참조하십시오.
QTPLUGIN
내장 리소스로 사용할 수 있도록 응용 프로그램과 링크할 정적 Qt 플러그인의 이름 목록을 지정합니다.
qmake는 사용된 Qt 모듈에 일반적으로 필요한 플러그인을 자동으로 추가합니다 ( QT
참조 ). 기본값은 최적의 즉시 사용 환경을 위해 조정됩니다. 사용 가능한 플러그인 목록과 자동 연결을 재정의하는 방법은 정적 플러그인을 참조하세요.
이 변수는 현재 Qt의 공유/동적 빌드에 대해 링크하거나 라이브러리를 링크할 때 아무런 영향을 미치지 않습니다. 나중에 동적 플러그인 배포에 사용될 수 있습니다.
QT_VERSION
Qt의 현재 버전을 포함합니다.
QT_MAJOR_VERSION
Qt의 현재 메이저 버전을 포함합니다.
QT_MINOR_VERSION
Qt의 현재 부 버전을 포함합니다.
qt_patch_version
Qt의 현재 패치 버전을 포함합니다.
RC_FILE
윈도우 전용. 대상에 대한 윈도우 리소스 파일(.rc)의 이름을 지정합니다. 윈도우 리소스 파일 추가하기를 참조하십시오.
RC_CODEPAGE
Windows 전용. 생성된 .rc 파일에 지정해야 하는 코드페이지를 지정합니다. 이 변수는 VERSION 또는 RC_ICONS 변수가 설정되어 있고 RC_FILE 및 RES_FILE 변수가 설정되어 있지 않은 경우에만 사용됩니다.
RC_DEFINES
Windows 전용. qmake는 이 변수 값을 RC 전처리기 매크로(/d 옵션)로 추가합니다. 이 변수가 설정되어 있지 않으면 DEFINES 변수가 대신 사용됩니다.
RC_DEFINES += USE_MY_STUFF
RC_ICONS
Windows 전용. 생성된 .rc 파일에 포함할 아이콘을 지정합니다. 이 변수는 RC_FILE 및 RES_FILE 변수가 설정되지 않은 경우에만 사용됩니다. .rc 파일 생성에 대한 자세한 내용은 플랫폼 노트에서 확인할 수 있습니다.
RC_LANG
Windows 전용. 생성된 .rc 파일에 지정해야 하는 언어를 지정합니다. 이 변수는 VERSION 또는 RC_ICONS 변수가 설정되어 있고 RC_FILE 및 RES_FILE 변수가 설정되어 있지 않은 경우에만 사용됩니다.
RC_INCLUDEPATH
Windows Resource Compiler 에 전달되는 포함 경로를 지정합니다.
RCC_DIR
Qt Resource Compiler 출력 파일의 디렉터리를 지정합니다.
예를 들어
unix:RCC_DIR = ../myproject/resources win32:RCC_DIR = c:/myproject/resources
REQUIRES
조건으로 평가되는 값의 목록을 지정합니다. 조건 중 하나라도 거짓이면, qmake는 빌드할 때 이 프로젝트(및 해당 서브디렉토리)를 건너뜁니다.
참고: 빌드할 때 프로젝트 또는 하위 프로젝트를 건너뛰려면 대신 requires() 함수를 사용하는 것이 좋습니다.
RESOURCES
대상에 대한 리소스 컬렉션 파일(qrc)의 이름을 지정합니다. 리소스 컬렉션 파일에 대한 자세한 내용은 Qt 리소스 시스템을 참조하십시오.
RES_FILE
Windows 전용. 이 대상에 대한 윈도우 리소스 컴파일러의 출력 파일 이름을 지정합니다. RC_FILE 및 Windows 리소스 파일 추가를 참조하십시오.
이 변수의 값은 일반적으로 qmake 또는 qmake.conf에 의해 처리되며 수정할 필요가 거의 없습니다.
SOURCES
프로젝트에 있는 모든 소스 파일의 이름을 지정합니다.
예를 들어:
SOURCES = myclass.cpp \ login.cpp \ mainwindow.cpp
HEADERS도 참조하세요.
SUBDIRS
이 변수를 subdirs
템플릿과 함께 사용하면 빌드해야 하는 프로젝트의 일부가 포함된 모든 하위 디렉터리 또는 프로젝트 파일의 이름을 지정합니다. 이 변수를 사용하여 지정한 각 하위 디렉터리에는 고유한 프로젝트 파일이 있어야 합니다.
파일 이름을 생략할 수 있으므로 각 하위 디렉터리의 프로젝트 파일은 하위 디렉터리 자체와 동일한 기본 이름을 사용하는 것이 좋습니다. 예를 들어 하위 디렉터리가 myapp
인 경우 해당 디렉터리의 프로젝트 파일은 myapp.pro
으로 지정해야 합니다.
또는 모든 디렉터리에 있는 .pro 파일의 상대 경로를 지정할 수도 있습니다. 현재 프로젝트의 상위 디렉터리 또는 하위 디렉터리에 있는 경로만 지정하는 것이 좋습니다.
예를 들어
SUBDIRS = kernel \ tools \ myapp
하위 디렉터리가 특정 순서로 작성되도록 해야 하는 경우 관련 SUBDIRS
요소에 .depends
수정자를 사용합니다.
예를 들어
SUBDIRS += my_executable my_library tests doc my_executable.depends = my_library tests.depends = my_executable
위의 구성은 my_library
가 my_executable
보다 먼저 빌드되고 my_executable
가 tests
보다 먼저 빌드되도록 합니다. 그러나 doc
은 다른 하위 디렉터리와 병렬로 빌드할 수 있으므로 빌드 프로세스의 속도가 빨라집니다.
참고: 여러 종속성을 나열할 수 있으며 종속성이 있는 대상보다 먼저 빌드됩니다.
참고: 멀티코어 빌드 속도가 느려질 수 있으므로 CONFIG += 순서대로 사용하는 것은 권장하지 않습니다. 위 예시와 달리 종속성이 없더라도 모든 빌드는 순차적으로 진행됩니다.
빌드 순서를 정의하는 것 외에도 SUBDIRS
요소에 추가 수정자를 지정하여 SUBDIRS
의 기본 동작을 수정할 수 있습니다. 지원되는 수정자는 다음과 같습니다:
수정자 | Effect |
---|---|
.subdir | SUBDIRS 값 대신 지정된 하위 디렉터리를 사용합니다. |
.file | 하위 프로젝트 pro 파일을 명시적으로 지정합니다. .subdir 수정자와 함께 사용할 수 없습니다. |
.depends | 이 하위 프로젝트는 지정된 하위 프로젝트에 종속됩니다. |
.makefile | 서브프로젝트의 메이크파일. 메이크파일을 사용하는 플랫폼에서만 사용할 수 있습니다. |
.target | 이 하위 프로젝트와 관련된 메이크파일 대상에 사용되는 기본 문자열입니다. 메이크파일을 사용하는 플랫폼에서만 사용할 수 있습니다. |
예를 들어 SUBDIRS
값과 다른 디렉터리에 있는 두 개의 하위 디렉터리를 정의하고 하위 디렉터리 중 하나는 다른 하위 디렉터리보다 먼저 빌드해야 합니다:
SUBDIRS += my_executable my_library my_executable.subdir = app my_executable.depends = my_library my_library.subdir = lib
TARGET
대상 파일의 이름을 지정합니다. 기본적으로 프로젝트 파일의 기본 이름을 포함합니다.
예를 들어
TEMPLATE = app TARGET = myapp SOURCES = main.cpp
위의 프로젝트 파일은 유닉스에서는 myapp
, 윈도우에서는 myapp.exe
이라는 이름의 실행 파일을 생성합니다.
TARGET_EXT
TARGET
의 확장자를 지정합니다. 이 변수의 값은 일반적으로 qmake 또는 qmake.conf에서 처리하며 수정할 필요가 거의 없습니다.
TARGET_x
주요 버전 번호와 함께 TARGET
의 확장자를 지정합니다. 이 변수의 값은 일반적으로 qmake 또는 qmake.conf에 의해 처리되며 수정할 필요가 거의 없습니다.
TARGET_x.y.z
TARGET
의 확장명과 버전 번호를 지정합니다. 이 변수의 값은 일반적으로 qmake 또는 qmake.conf에 의해 처리되며 수정할 필요가 거의 없습니다.
TEMPLATE
프로젝트를 생성할 때 사용할 템플릿의 이름을 지정합니다. 허용되는 값은 다음과 같습니다:
옵션 | 설명 |
---|---|
app | 애플리케이션 빌드용 메이크파일을 만듭니다(기본값). 자세한 내용은 애플리케이션 빌드하기를 참조하세요. |
lib | 라이브러리 빌드용 메이크파일을 만듭니다. 자세한 내용은 라이브러리 빌드하기를 참조하세요. |
subdirs | 하위 디렉터리에 타깃을 빌드하기 위한 메이크파일을 만듭니다. 하위 디렉터리는 SUBDIRS 변수를 사용하여 지정합니다. |
aux | 아무것도 빌드하지 않는 메이크파일을 생성합니다. 예를 들어 프로젝트가 해석된 언어로 작성되었기 때문에 타깃을 만들기 위해 컴파일러를 호출할 필요가 없는 경우 이 템플릿을 사용합니다. 참고: 이 템플릿 유형은 메이크파일 기반 생성기에서만 사용할 수 있습니다. 특히 vcxproj 및 Xcode 생성기에서는 작동하지 않습니다. |
vcapp | Windows 전용. Visual Studio용 애플리케이션 프로젝트를 생성합니다. 자세한 내용은 Visual Studio 프로젝트 파일 생성을 참조하십시오. |
vclib | Windows 전용. Visual Studio용 라이브러리 프로젝트를 생성합니다. |
예:
TEMPLATE = lib SOURCES = main.cpp TARGET = mylib
-t
명령줄 옵션으로 새 템플릿 유형을 지정하여 템플릿을 재정의할 수 있습니다. 이렇게 하면 .pro 파일이 처리된 후 템플릿 유형이 재정의됩니다. 템플릿 유형을 사용하여 프로젝트 빌드 방법을 결정하는 .pro 파일의 경우 -t
옵션을 사용하는 대신 명령줄에 TEMPLATE를 선언해야 합니다.
번역
사용자 인터페이스 텍스트를 모국어가 아닌 언어로 번역한 번역(.ts) 파일 목록을 지정합니다.
TRANSLATIONS
의 번역 파일은 lrelease 및 업데이트 도구 사용으로 처리됩니다. lrelease
에서만 파일을 처리하려면 EXTRA_TRANSLATIONS를 사용하세요.
빌드 중에 파일을 자동으로 컴파일하려면 CONFIG += lrelease를 사용하고, Qt 리소스 시스템에서 사용할 수 있도록 하려면 CONFIG += lrelease embed_translations를 사용하면 됩니다.
Qt를 사용한 국제화(i18n) 및 지역화(l10n)에 대한 자세한 내용은 Qt Linguist 매뉴얼을 참조하십시오.
TR_EXCLUDE
lupdate
에서 처리에서 제외할 경로 목록(소스 파일, 하위 디렉터리 및 C++ 포함 경로)을 지정합니다. 경로에 와일드카드를 포함할 수 있습니다. 상대 경로는 _PRO_FILE_PWD_에 상대적인 것으로 간주됩니다.
예를 들어 소스 파일을 제외하려면 다음과 같이 하세요:
SOURCES += main.cpp \ excluded.cpp \ 3rdparty/sqlite3.h \ 3rdparty/sqlite3.c TR_EXCLUDE += excluded.cpp 3rdparty/*
SUBDIRS
프로젝트의 하위 디렉터리를 제외하려면 다음과 같이 하세요:
SUBDIRS += \ libs \ apps \ tests TR_EXCLUDE += tests
업데이트의 C++ 파서 속도를 높이려면 include 경로를 제외합니다:
linux { TR_EXCLUDE += /usr/include/boost/* }
UI_DIR
uic의 모든 중간 파일이 위치할 디렉터리를 지정합니다.
예를 들어
unix:UI_DIR = ../myproject/ui win32:UI_DIR = c:/myproject/ui
VERSION
app
템플릿이 지정된 경우 애플리케이션의 버전 번호를, lib
템플릿이 지정된 경우 라이브러리의 버전 번호를 지정합니다.
Windows에서는 RC_FILE 및 RES_FILE 변수가 설정되지 않은 경우 .rc 파일 자동 생성을 트리거합니다. 생성된 .rc 파일에는 메이저, 마이너, 패치 레벨 및 빌드 번호로 채워진 파일 버전 및 제품 버전 항목이 있습니다. 각 숫자는 0에서 65535 사이의 범위여야 합니다. .rc 파일 생성에 대한 자세한 내용은 플랫폼 노트에서 확인할 수 있습니다.
예를 들어
win32:VERSION = 1.2.3.4 # major.minor.patch.build else:VERSION = 1.2.3 # major.minor.patch
version_pe_header
Windows 전용. Windows 링커가 /VERSION 옵션을 통해 .exe 또는 .dll 파일의 헤더에 넣는 버전 번호를 지정합니다. 메이저 버전과 마이너 버전만 지정할 수 있습니다. VERSION_PE_HEADER를 설정하지 않으면 VERSION (설정된 경우)의 주 버전과 부 버전으로 되돌아갑니다.
VERSION_PE_HEADER = 1.2
VER_MAJ
lib
템플릿이 지정된 경우 라이브러리의 주 버전 번호를 지정합니다.
VER_MIN
lib
템플릿이 지정된 경우 라이브러리의 부 버전 번호를 지정합니다.
VER_PAT
lib
템플릿이 지정된 경우 라이브러리의 패치 버전 번호를 지정합니다.
VPATH
qmake가 열 수 없는 파일을 검색할 위치를 알려줍니다. 예를 들어, qmake가 SOURCES
을 찾다가 열 수 없는 항목을 발견하면 전체 VPATH 목록을 살펴보고 자체적으로 파일을 찾을 수 있는지 확인합니다.
DEPENDPATH도 참조하십시오.
windows_target_플랫폼_버전
대상 Windows 버전을 지정합니다. 이는 vcxproj 파일에서 WindowsTargetPlatformVersion
태그에 해당합니다.
데스크톱 Windows의 경우 기본값은 환경 변수 WindowsSDKVersion
의 값입니다.
windows_target_platform_min_version
Windows 대상 플랫폼의 최소 버전을 지정합니다. 이는 vcxproj 파일에서 WindowsTargetPlatformMinVersion
태그에 해당합니다.
기본값은 WINDOWS_TARGET_PLATFORM_VERSION
입니다.
YACCSOURCES
프로젝트에 포함할 Yacc 소스 파일 목록을 지정합니다. 모든 종속성, 헤더 및 소스 파일이 프로젝트에 자동으로 포함됩니다.
예
YACCSOURCES = moc.y
_PRO_FILE_
사용 중인 프로젝트 파일의 경로를 포함합니다.
예를 들어 다음 줄은 프로젝트 파일의 위치가 콘솔에 기록되도록 합니다:
message($$_PRO_FILE_)
참고: 이 변수 값을 덮어쓰지 마세요.
_PRO_FILE_PWD_
사용 중인 프로젝트 파일이 포함된 디렉터리 경로를 포함합니다.
예를 들어 다음 줄은 프로젝트 파일이 포함된 디렉터리의 위치를 콘솔에 기록합니다:
message($$_PRO_FILE_PWD_)
참고: 이 변수 값을 덮어쓰지 마세요.
QQmlEngine::addImportPath()도 참조하세요 .
© 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.