이 페이지에서

Qt 6.12의 새로운 기능

Qt 6.12의 신규 및 복원된 모듈

Qt 6.12에는 다음과 같은 모듈과 도구가 추가되었습니다:

  • Qt Qml 디자인 지원 모듈: QML에서 객체를 등록하고 참조하기 위한 일련의 타입을 제공합니다. 이는 향후 Qt Quick 디자인 툴링을 위해 마련되었습니다.

Qt 6.12의 새로운 기능

ActiveQt 모듈

주목할 만한 변경 사항은 없습니다.

Qt Bluetooth Module

  • Android 백엔드는 이제 BTLE 광고를 시작할 때 QLowEnergyAdvertisingParameters 를 통해 제공된 광고 최소 및 최대 간격 매개변수를 준수합니다.

Qt Canvas Painter 모듈

Qt CoAP 모듈

주목할 만한 변경 사항은 없습니다.

Qt Core 모듈

Qt D-Bus 모듈

주목할 만한 변경 사항은 없습니다.

Qt Graphs 모듈

  • 이제 Qt Canvas Painter를 2D 그래프의 렌더링 백엔드로 사용할 수 있습니다. configure 단계에서 -feature-graphs-2d-high-performance-backend configure 플래그를 사용하여 이 기능을 활성화하십시오.
  • 2D 그래프를 위한 새로운 로그 축 유형인 QLogValueAxis (QML에서는LogValueAxis )이 추가되었습니다.
  • QXYSeries QML에서 선언적 데이터 입력을 위한 values, valueMapping, valueMin 및 stepSize 속성이 추가되었습니다.
  • QPieSeries QML에서 선언적 방식으로 데이터를 입력할 수 있도록 sliceData 및 sliceLabels 속성이 추가되었습니다.
  • QValueAxis 또한 QLogValueAxis 에는 축 레이블 텍스트를 사용자 정의할 수 있는 labelPostFormat 속성이 추가되었습니다.
  • Q3DGraphsWidgetItem 3D 그래프에서 패닝을 활성화하고 구성하기 위한 panEnabled 및 dragMode 속성이 추가되었습니다.
  • QDateTimeAxis tickCount 속성이 추가되었습니다.

Qt GRPC 모듈

Qt GUI 모듈

  • QRhi 에 간접 렌더링 지원이 추가되었습니다. 이제 IndirectDrawBuffer 유형의 버퍼를 생성할 수 있으며, QRhiCommandBuffer 를 통해 간접 드로우 호출을 발행할 수 있습니다.
  • QRhi 셰이더 드로우 매개변수 내장 함수(예: gl_DrawID)에 대한 지원 여부를 조회하기 위해 ShaderDrawParameters 기능 플래그가 추가되었습니다.
  • QRhi Vulkan 백엔드는 이제 VK_EXT_device_fault 를 사용하여 장치 손실에 대한 추가 세부 정보를 보고합니다.
  • QAccessibilityHints 모션 감소 접근성 기본 설정을 위한 motionPreference 속성이 추가되었습니다.
  • QStyleHints toolTipWakeUpDelay 가 추가되어, 애플리케이션이 툴팁이 표시되기 전의 지연 시간을 조회하거나 조정할 수 있게 되었습니다.
  • QImageReader ` autoTransform()`을 준수하는 이미지 크기를 반환하는 ` effectiveSize()`이 추가되었습니다.
  • QTextCursor::deletePreviousChar() (Backspace)가 이제 다중 코드 단위 이모지 시퀀스를 올바르게 처리합니다.
  • 입력 방식이 전체 화면을 차지하지 않도록 요청하는 Qt::InputMethodHint::ImhNoFullscreen 가 추가되었습니다.
  • 소수점을 포함한 숫자만 입력할 수 있도록 제한하고, 음수는 입력할 수 없도록 하는 Qt::InputMethodHint::ImhDecimalNumbersOnly 가 추가되었습니다.

Qt HTTP Server 모듈

Qt Image Formats 모듈

주목할 만한 변경 사항은 없습니다.

Qt Lottie Animation 모듈

Qt MQTT 모듈

주목할 만한 변경 사항은 없습니다.

Qt Multimedia Module

Qt Network 모듈

  • TLS 키 자료 익스포터(RFC 5705)를 노출하기 위해 QSslKeyingMaterial 및 QSslConfiguration::keyingMaterial() / setKeyingMaterial()이 도입되었습니다.
  • QHostInfo clearCache() 메서드가 추가되어 프로그래밍 방식으로 DNS 결과 캐시를 플러시할 수 있게 되었습니다.
  • QHttpHeaders QDataStream 스트림 연산자, 헤더를 구문 분석하기 위한 () 및 이를 설정하기 위한 ()이 추가되었습니다. 새로운 QHttpHeaderRange 클래스는 해당 헤더 내의 단일 바이트 범위를 나타냅니다. Range rangeValues setRangeValues
  • OpenSSL TLS 백엔드는 이제 OpenSSL 4를 기반으로 빌드하는 것을 지원합니다.

Qt Network 인증 모듈

주목할 만한 변경 사항은 없습니다.

Qt OPC UA 모듈

주목할 만한 변경 사항은 없습니다.

Qt OpenAPI 모듈

  • qt_add_openapi_client() 에 GENERATE_DOCUMENTATION, DOCUMENTATION_OUTPUT_DIRECTORY 옵션이 추가되어 클라이언트 코드와 함께 Doxygen 기반 문서를 생성할 수 있게 되었습니다.
  • oneOf 스키마 기능에 대한 지원이 추가되었습니다.
  • 생성된 모델 속성 게터(getter)의 이름이 변경되었습니다. 이제 ` Q_PROPERTY `는 YAML 파일에서 사용된 것과 동일한 속성 이름을 노출합니다.
  • 생성된 클라이언트 API 메서드는 더 이상 가상 메서드가 아닙니다.

Qt Positioning 모듈

Qt Print Support 모듈IRNSS 및 SBAS 위성 시스템에 대한 항목이 추가되었습니다.

주목할 만한 변경 사항은 없습니다.

Qt Protobuf 모듈

  • 생성된 메시지 클래스의 Qt 속성은 이제 기본적으로 FINAL 수식어로 표시됩니다. 이를 통해 QML 툴링이 성능 최적화를 적용하고 더 효율적인 코드를 생성할 수 있습니다. 이전 동작으로 되돌리려면 qt_add_protobuf() 의 새로운 옵션 GENERATE_NON_FINAL_PROPERTIES 을 사용하십시오.

Qt Qml 모듈

Qt Quick 모듈

Qt Quick Controls 모듈

  • QtQuick.Controls.Native 스타일이 추가되었습니다. import QtQuick.Controls.Native 은 컴파일 시점에 컴파일 대상 플랫폼에 가장 적합한 스타일을 선택합니다. 따라서 컴파일 시점 스타일 선택의 이점과 애플리케이션에 플랫폼별 룩앤필을 적용할 수 있는 가능성을 결합합니다.
  • ToolTip policy 속성이 추가되어 툴팁의 자동 표시 여부를 제어할 수 있게 되었습니다.
  • ComboBox highlightOnHover 속성이 추가되었습니다.
  • RangeSlider 두 핸들이 서로 교차하도록 허용하거나 방지하기 위한 ` crossingEnabled ` 속성이 추가되었습니다.
  • Menu separatorsCollapsible 속성이 추가되었습니다.
  • MenuItem 이제 연관된 Action 에서 키보드 단축키를 표시합니다.
  • SearchField 이제 ` TextInput `가 비어 있는 경우 키를 사용하여 탐색할 수 있습니다.
  • 편의를 위해 기존 TextField API 중 일부(selectTextByMouse, selectedText, selectionStart, selectionEnd, cursorPosition, select(), selectWord() 및 deselect())가 SearchField 에 추가되었습니다.

Qt Quick Dialogs 모듈

주목할 만한 변경 사항은 없습니다.

Qt Quick Effects 모듈

주목할 만한 변경 사항은 없습니다.

Qt Quick Test 모듈

Qt Quick 3D 모듈

  • 절차적 하늘을 렌더링하고 이미지 기반 조명 데이터를 생성하기 위한 SkyMaterial QML 유형이 추가되었습니다.
  • QtQuick3D.Helpers 임포트에 QuadTextureProvider 가 추가되었습니다. 사용자 정의 프래그먼트 셰이더를 사용하여 쿼드 텍스처를 렌더링하는 데 사용되는 QML 유형입니다.
  • Model GPU 인스턴싱을 사용할 때 수동으로 디테일 수준을 제어할 수 있는 instancingLodFactor 속성이 추가되었습니다.
  • ExtendedSceneEnvironment 스크린 스페이스 반사를 더 정밀하게 제어할 수 있도록 ssrThickness 및 ssrMaxSteps 속성이 추가되었습니다.
  • RuntimeLoader 동적으로 로드된 씬 내에서 이름이나 유형을 기준으로 오브젝트를 찾기 위한 ` query()` 및 ` queryAll()` 메서드가 추가되었습니다.

Qt Quick 3D XR 모듈

  • 모노 뷰 구성(XR_VIEW_CONFIGURATION_TYPE_PRIMARY_MONO)을 지원하여, Qt Quick 3D XR 애플리케이션이 AR 안경과 같은 2D XR 기기에서 실행될 수 있도록 했습니다.

Qt Quick 3D Physics 모듈

Qt Remote Objects 모듈

Qt SCXML 모듈

주목할 만한 변경 사항은 없습니다.

Qt Sensors 모듈

주목할 만한 변경 사항은 없습니다.

Qt Serial Port 모듈

주목할 만한 변경 사항은 없습니다.

Qt Spatial Audio 모듈

주목할 만한 변경 사항은 없습니다.

Qt Serial Bus 모듈

주목할 만한 변경 사항은 없습니다.

Qt SQL 모듈

주목할 만한 변경 사항은 없습니다.

Qt SVG 모듈

Qt Labs StyleKit 모듈

  • QWidget 애플리케이션에 StyleKit 기반 스타일을 적용하는 QStyle 의 서브클래스인 QStyleKitStyle 가 도입되었습니다.
  • 이제 이 스타일은 RoundButton 및 MenuSeparator Qt Quick Controls 유형에 대한 구현을 제공하여, 일반적인 대체 방식을 대체합니다.

Qt TaskTree 모듈

  • QtTaskTree::For 반복 횟수 매개변수로 ` qsizetype `를 받는 오버로드가 추가되었습니다. 이를 ` For(RepeatInterator(n))`의 단축 형태로 사용할 수 있습니다.
  • QtTaskTree::Forever 이제 QtTaskTree::Group 로 암시적으로 변환됩니다.
  • QtTaskTree::ListIterator QList 를 반환하는 게터 함수를 매개변수로 받는 오버로드가 추가되었습니다.

Qt Test 모듈

  • 벤치마크 결과에는 이제 측정 백엔드(시간, CPU 틱, 이벤트, Valgrind) 전반의 분산 및 표준 편차가 포함됩니다.
  • 일관성을 위해 일반 텍스트 벤치마크 로거가 이제 부동 소수점 결과를 과학적 표기법으로 포맷합니다.
  • 명령줄에서 유효한 테스트 함수와 함께 존재하지 않는 테스트 함수가 지정된 경우에도, 유효한 테스트는 여전히 실행됩니다.

Qt Virtual Keyboard 모듈

주목할 만한 변경 사항은 없습니다.

Qt WebEngine 모듈

  • QWebEngineNavigationRequest 사용자가 시작한 탐색과 프로그래밍 방식으로 시작된 탐색을 구분하기 위해 userInitiated 속성이 추가되었습니다.
  • QWebEngineProfile PKCS#11 하드웨어 토큰의 잠금을 해제하기 위한 콜백을 제공하기 위해 setCryptoModulePasswordFunction()이 추가되었습니다.

Qt WebSockets Module

주목할 만한 변경 사항은 없습니다.

Qt PDF 모듈

  • QPdfSearchModel 검색이 진행 중인지, 유휴 상태인지, 완료되었는지 여부를 추적하기 위해 status 속성과 Status 열거형이 추가되었습니다.
  • QPdfView 이제 커서 위치를 중심으로 Control 키와 마우스 휠을 사용하여 확대/축소할 수 있습니다.
  • render() 함수에 이미지 형식과 배경색을 지정하는 선택적 인수가 추가되었습니다.

Qt WebView 모듈

  • WebView 모듈은 이제 Android, iOS, macOS 및 Windows에서 Qt 리소스 시스템(qrc:/ URL)의 콘텐츠를 불러올 수 있습니다.

Qt Widgets 모듈

Qt XML 모듈

주목할 만한 변경 사항은 없습니다.

도구

Qt Assistant

  • Qt Assistant 이제 어두운 색상 구성표가 활성화되었을 때 밝은 테마/어두운 테마 Qt SVG 다이어그램을 올바르게 렌더링하며, 이는 온라인 Qt 문서의 동작과 일치합니다.

QML 명령줄 도구

  • qmllint에 모든 기본 경고 메시지를 억제하는 ` --only-explicit-categories ` 옵션이 추가되었습니다.
  • 등록된 유형의 속성 및 메서드에서 사용되는 미등록 유형은 이제 qmltypes에 "opaque" 유형으로 기록됩니다. 이를 통해 툴링에서 발생하는 경고를 방지하고, qmlls에서 자동 완성 및 정의 위치로 이동 기능이 작동하도록 하며, 더 많은 곳에서 C++로 바인딩 컴파일을 수행할 수 있게 되었습니다.
  • qmllint와 qmlls가 알 수 없는 유형에 대해 각 바인딩 및 사용 시마다 경고 메시지를 생성하는 대신, 한 번만 경고하도록 변경되었습니다.
  • qmllint 및 qmlls 에 다음 사항에 대한 새로운 경고가 추가되었습니다.
    • 가려진 QML 타입 멤버.
    • 호환되지 않는 파일 선택 변형(선택적 적용).
    • 재귀적으로 인스턴스화된 QML 유형.
    • qmldir 또는 QT_QML_SOURCE_TYPENAME 이름 대신 파일 이름으로 참조되는 QML 유형.
    • 1개 이상의 인자를 받는 ` new Array() ` 오버로드의 자바스크립트 사용.
  • QML Language Server 에 다음 기능을 추가했습니다:
    • 코드 액션을 통해 컴포넌트를 로더로 감싸는 기능.
    • QML_FOREIGN 를 통해 선언된 타입의 C++ 정의를 찾습니다.
    • QML 유형 정보의 백그라운드 재구축 중 진행 상황을 표시합니다.

QDoc 문서 생성기

  • C++20 개념: 새로운 \concept topic 명령어는 C++20 컨셉에 대한 전용 참조 페이지를 생성하며, 여기에는 해당 컨셉에 의해 제약되는 문서화된 유형 및 함수 목록이 포함됩니다. C++ 개요의 컨셉 참조는 HTML 및 DocBook 출력 모두에서 이러한 페이지로 연결되며, 컨셉(예: ` template <Integral T>`)에 의해 직접 제약되는 템플릿 매개변수는 ` typename ` 키워드 대신 컨셉 이름을 표시합니다. 컨셉 링크는 ` .index ` 파일을 통해 모듈 경계를 넘어 작동합니다.
  • enable_if- 기반 SFINAE 제약 조건은 불투명한 이름 없는 부울 템플릿 매개변수 대신 가독성 높은 requires 절로 렌더링되며, 이는 Qt 6.11에서 도입된 C++20 requires 절 지원을 확장한 것입니다. 함수에 명시적인 requires 절이 함께 있는 경우, 두 절이 결합됩니다.
  • 명시적으로 기본값이 지정되거나 삭제된 함수는 시놉시스에서 [default] 및 [delete] 태그를 가지며, 컴파일러가 생성한 특수 멤버 함수는 [implicit] 태그가 붙습니다. 이러한 태그는 cppreference.com으로 연결됩니다. \fn 블록이 없는 경우, QDoc은 경고 없이 문서를 자동 생성합니다. 명시적인 문서는 생성된 텍스트를 덮어쓰며, showautogenerateddocs 구성 변수를 false 로 설정하면 출력에서 해당 문서가 생략됩니다.
  • QDoc은 숨겨진 프렌드(인수 의존적 조회를 통해서만 찾을 수 있는 프렌드 함수)와 단순히 접근 권한만 부여하는 프렌드 선언을 구분합니다. 인라인 외부에서 정의된 것을 포함하여 숨겨진 프렌드는, 클래스 한정 이름을 사용하는 대신 \fn operator==(const MyClass &, const MyClass &) 와 같은 자연스러운 자유 함수 구문을 사용하여 문서화하십시오.
  • 통합된 표가 \compares 및 \compareswith 명령어로 생성된 산발적인 비교 문서 단락들을 대체하여, 클래스가 어떤 유형과 비교하는지, 그리고 각 관계에 어떤 비교 범주가 적용되는지 한눈에 확인할 수 있게 해줍니다.
  • 이제 \a 명령은 이제 템플릿 매개변수 이름을 유효성 검사합니다. QDoc은 클래스 및 유형 별칭 내의 문서화되지 않은 템플릿 매개변수와, 함수 내의 문서화되지 않은 비유형 또는 템플릿-템플릿 매개변수에 대해 경고를 표시합니다.
  • `status` \preliminary 명령어로 생성된 상태 설명자와 메시지를 예비 구성 변수를 사용하여 사용자 정의할 수 있으며, 이를 통해 기본값 대신 "Technology Preview"와 같은 용어를 사용할 수 있습니다. 상태 명령어의 우선순위는 일관되게 적용됩니다. 즉, \preliminary 는 \modulestate 보다 우선하며, \internal 는 두 가지 모두보다 우선합니다.
  • " \module " 또는 " \qmlmodule " 토픽에 설정된 상태(예: " \preliminary " 또는 " \deprecated")는 구성원이 자체 상태를 설정하지 않는 한 모듈의 구성원에게 전파됩니다.
  • 새로운 \qmluncreatabletype topic 명령어는 QML 유형 시스템에 등록되어 있지만 인스턴스화할 수 없는 QML 유형을 문서화합니다. 또한 QDoc은 QML_UNCREATABLE 매크로로 주석이 달린 유형을 자동으로 감지합니다.
  • 부속 속성, 신호 및 메서드는 "모든 멤버" 페이지뿐만 아니라 주요 QML 참조 페이지에도 주석이 달립니다.
  • `topic` \qmlmethod 명령어는 완전한 시그니처를 필요로 하며, 반환 유형이 누락되었거나 매개변수 목록을 파싱할 수 없는 경우 QDoc이 경고를 표시합니다.
  • 클래스 문서의 Include 문은 Clang이 보고한 실제 헤더 파일 이름을 반영합니다. Qt 스타일의 편의 헤더(예: <QString>)를 사용하는 프로젝트는 계속해서 자동으로 작동합니다.
  • 각 프로젝트는 기본 출력 디렉터리에 하나의 .index 파일을 갖게 되며, 이는 형식별 하위 디렉터리에 있는 형식별 사본을 대체합니다. indexes 구성 변수의 상대 경로는 다른 경로 변수와 일관되게 .qdocconf 파일의 위치를 기준으로 해결됩니다.
  • 생성된 HTML 파일에는 페이지 유형(클래스, QML 유형, 모듈, 예제 등)에 기반한 자동 <meta name="keywords"> 항목이 포함되어, 후처리 및 사이트맵 생성을 용이하게 합니다. 코드 블록에는 highlight.js 구문 강조 표시와 호환되는 태그가 적용됩니다.
  • 문서 작성에 대한 사소한 개선 사항: \metaqdoc-suppress-inheritance 문서화 목적으로만 기본 클래스를 상속하는 타입의 경우 "Inherits:" 행을 숨기려면 다음을 사용하십시오; \list 0 이하인 시작 값을 허용합니다; \# 는 \l 링크 대상에서 리터럴 # 문자를 나타냅니다; 그리고 \details 문서에 명시된 중괄호로 구분된 요약 인수를 강제 적용합니다.
  • LLVM/Clang 22 호환성을 추가했습니다.

Qt Linguist

  • lupdate는 이제 .ts 파일의 기존 줄 끝 기호를 유지합니다. Windows에서 CRLF 줄 끝 기호를 사용하는 파일은 CRLF로 그 자리에서 업데이트되며, LF 줄 끝 기호를 사용하는 파일과 새로 생성된 파일은 LF를 유지합니다.
  • Qt Linguist 원할 경우 온라인 웹 문서를 사용할 수 있는 새로운 옵션 -web-help가 추가되었습니다.

Resource Compiler (rcc)

  • rcc는 이제 콘텐츠 기반 SHA256 해싱을 사용하여 리소스 데이터의 중복을 제거합니다. Qt 리소스 컬렉션에 포함된 동일한 파일은 한 번만 저장되므로, 애플리케이션 소스 코드를 변경하지 않고도 컴파일된 리소스의 크기를 줄일 수 있습니다.

플랫폼 변경 사항

빌드 시스템 변경 사항

Qt 빌드

  • 이제 Qt를 빌드하려면 CMake 3.25 이상이 필요합니다.
  • C++ 런타임 라이브러리를 정적으로 링크하기 위해 static_compiler_runtime CMake 기능이 추가되었습니다. Windows(MSVC)에서는 하이브리드 CRT 방식을 사용하여 Visual C++ 재배포 가능 패키지에 대한 의존성을 제거합니다.
  • Android용 Qt 빌드 시, Qt JAR 타깃에 대해 javac 를 직접 호출하는 대신 Gradle을 사용하게 되었습니다.

CMake API

데스크톱 플랫폼

Windows

  • 이제 CMake 프로젝트는 qt_add_executable()을 사용하여 빌드된 Windows 실행 파일에 대한 애플리케이션 매니페스트를 자동으로 생성하고 포함합니다. 이 매니페스트는 Windows 10/11 호환성을 선언하고, 긴 경로 처리를 지원하며, UAC 실행 수준을 구성합니다. 생성된 매니페스트를 제어하는 두 가지 새로운 CMake 타깃 속성이 추가되었습니다. QT_WINDOWS_APP_PROJECT_IDENTIFIER는 어셈블리 식별자 이름을 설정하고, QT_WINDOWS_APP_PROJECT_EXECUTION_LEVEL은 실행 수준을 설정합니다. 자세한 내용은 Qt for Windows - 배포를 참조하십시오.
  • windeployqt에는 Windows Store appx 패키지로 패키징하기에 적합한 AppxManifest.xml 를 생성하기 위한 --appx 및 --appx-certificate 옵션이 추가되었습니다.
  • QOperatingSystemVersion::Windows11_25H2 (10.0.26200)이 명명된 OS 버전 상수로 추가되었습니다.
  • Windows에서 플랫폼 플러그인은 이제 항상 sRGB를 보고하는 대신, ColorProfileGetDisplayDefault 를 통해 각 화면의 ICC 프로필에서 색 공간을 파생합니다.
  • DirectWrite 글꼴 백엔드는 이제 각 글꼴의 GASP 테이블을 읽어 글꼴 및 포인트 크기에 따라 적절한 앤티앨리어싱 전략을 선택하여, 글꼴 디자이너의 의도를 더 정확하게 반영합니다.
  • 현재 Intel GPU 드라이버에서 셰이더 디스크 캐시가 다시 활성화되었습니다. 지난 몇 년간 Windows의 Intel 그래픽에서는 이 기능이 무조건 비활성화되어 있었으나, 이제 드라이버 버전 확인이 대신 사용되어 최신 Intel 하드웨어에서 Qt Quick 3D 의 성능이 향상되었습니다.
  • QWizard 시스템이 다크 모드일 때 Aero 마법사 스타일이 더 이상 적용되지 않습니다. 다크 모드에서는 이 스타일이 올바르게 렌더링되지 않기 때문입니다.
  • Visual Studio 2026에서ARM64EC가 이제 완전히 지원됩니다. 설치 프로그램 패키지는 제공되지 않습니다. Qt WebEngine, WebView, Qt Quick 3D Physics 와 같은 일부 모듈은 지원되지 않습니다.

Linux

  • QDesktopServices::openUrl()는 이제 org.freedesktop.portal.OpenURI XDG 데스크톱 포털 서비스가 사용 가능한 경우, xdg-open 및 기타 대체 옵션보다 이를 우선적으로 사용합니다. 이 포털은 이전에 사용하던 애플리케이션과는 다르게 작동할 수 있습니다.
  • 포털을 사용할 수 없을 때 사용되는 대체 옵션이 업데이트되었습니다. 이제 Plasma 6의 kde-open 이 인식되는 반면, KDE 3 시대의 kfmclient 에 대한 지원은 중단되었습니다.
  • 새로운 motionPreference 속성은 데스크톱 설정에서 값을 가져옵니다. 즉, org.freedesktop.appearance 포털 네임스페이스의 reduced-motion 키와 GNOME의 org.gnome.desktop.interface enable-animations 설정에서 값을 반영합니다.
  • 이제 기본 GTK3 글꼴 대화 상자는 확장 가능/비확장 가능 글꼴 및 고정폭/비례폭 글꼴에 대해 QFontDialog 글꼴 필터링 옵션을 반영합니다.
  • AT-SPI 접근성 브릿지는 이제 확장된 상태 및 확장 가능한 상태의 변경 사항을 보조 기술에 알립니다.
  • fontconfig 2.17.1 이상에서 실행할 때 Qt 리소스에서 추가된 글꼴이 다시 올바르게 등록됩니다.
  • X11에서 툴팁 창이 표시될 때마다 다시 생성되지 않습니다.
  • QNetworkProxy 이제 libproxy 백엔드를 사용할 때 *_PROXY 환경 변수의 socks5h 체계를 인식합니다.

macOS

  • QScreen::grabWindow()는 이제 더 이상 사용되지 않는 CGDisplayCreateImageForRect 대신 ScreenCaptureKit을 사용합니다. API를 처음 사용할 때 권한 요청 메시지가 표시됩니다.
  • QWindows 플립되지 않은 NSView에 부모로 추가된 는 슈퍼뷰의 크기가 조정될 때 슈퍼뷰의 왼쪽 상단 모서리를 기준으로 상대적인 위치를 유지합니다.
  • QCocoaNativeInterface::setEmbeddedInForeignView() Qt 뷰 계층 구조를 외부 NSView 에 삽입하기 위해 더 이상 필요하지 않으며 지원되지도 않습니다. Qt가 이제 이를 자동으로 관리합니다.
  • 정적 Qt 빌드를 기반으로 빌드된 샌드박스 앱은 이제 Apple 플랫폼에서 기본적으로 재배치 가능합니다.
  • QMainWindow'의 통합 제목 및 툴바 모드는 이제 더 이상 사용되지 않는 텍스처 처리된 NSWindow 스타일 대신 Qt::ExpandedClientAreaHint 및 Qt::NoTitleBarBackgroundHint 을 통해 구현됩니다.
  • QStandardPaths::standardLocations()는 이제 ConfigLocation, GenericConfigLocation 및 AppConfigLocation 에 대해 시스템 전체의 /Library/Preferences 디렉터리를 포함합니다.

Linux의 Wayland 클라이언트

  • 세션 복원을 위한 XdgSessionManager Wayland 프로토콜 확장에 대한 지원이 추가되었습니다.
  • 이제 bradient 클라이언트 측 장식 테마에서 최소화, 최대화 및 닫기 버튼 힌트가 표시됩니다.

Wayland 컴포지터

  • linux-dmabuf-v1 안정 버전 프로토콜(버전 4)에 대한 지원이 추가되었습니다. 이를 사용하려면 클라이언트 버퍼 통합으로 "linux-dmabuf-v1"을 선택하십시오. 호환성을 위해 이전 구현(버전 3)은 "linux-dmabuf-unstable-v1"이라는 이름으로 계속 사용할 수 있습니다.

HarmonyOS

Qt 6.12에서는 HarmonyOS (OpenHarmony API 레벨 23, HarmonyOS 6.1.0)에 대한 지원을 테크놀로지 프리뷰(Technology Preview) 형태로 도입했습니다. Vulkan은 지원되지만, 접근성 및 EmbeddedUIExtensionAbility 기능은 아직 사용할 수 없습니다.

HarmonyOS에서 Qt 애플리케이션을 빌드하고 배포하는 데 도움이 되도록 다음과 같은 도구와 CMake 함수가 제공됩니다:

  • harmonydeployqt는 Qt 애플리케이션을 HarmonyOS 애플리케이션 패키지(HAP)로 패키징하고, 필요한 Qt 라이브러리와 플러그인을 복사하며, build-profile.json5 및 module.json5 메타데이터를 생성하고, HAP 서명 구성의 임베딩을 지원합니다.
  • harmonyostestrunner ctest 에서 트리거되는 를 통해 연결된 HarmonyOS 기기 또는 에뮬레이터에서 Qt 자동 테스트를 실행합니다. hdc
  • qt_add_harmonyos_permission()은 애플리케이션에 필요한 HarmonyOS 권한을 선언합니다.

HarmonyOS 배포와 관련된 주요 CMake 타깃 속성은 다음과 같습니다:

알려진 플랫폼 제한 사항의 전체 목록은 Qt for HarmonyOS 플랫폼 제한 사항 위키 페이지를 참조하십시오.

모바일 플랫폼

Android

안드로이드용 Qt
  • Gradle을 9.5.1로, Android Gradle 플러그인을 9.2.1로 업데이트했습니다.
  • 기본 대상 SDK 버전을 Android 17(API 레벨 37)로 업데이트했습니다.
  • Android 13 이상에서 예측형 뒤로 가기 제스처에 대한 지원을 추가했습니다. Qt는 ` OnBackInvokedCallback`를 통해 뒤로 가기 이벤트를 전달하며, 기본적으로 ` android:enableOnBackInvokedCallback ` 매니페스트 속성을 활성화합니다.
  • QT_ANDROID_GRADLE_MULTI_MODULE로 활성화되는 Gradle 멀티 모듈 빌드 지원을 추가했습니다. 이는 Play Feature Delivery의 기반이 됩니다. CMake는 androiddeployqt나 타사 도구 없이 전체 배포 파이프라인을 처리하므로 빌드가 더 빠르고 간단해집니다.
  • QT_ANDROID_GRADLE_MULTI_MODULE를 사용하기 위해 QT_USE_ANDROID_MODERN_BUNDLE CMake 변수를 더 이상 사용하지 않습니다. 하위 호환성을 위해 기존 이름은 여전히 인식됩니다.
  • Qt::InputMethodHint::ImhNoFullscreen, ImhDecimalNumbersOnly 및 ImhNoEditMenu 입력 방식 힌트에 대한 지원이 추가되었습니다.
  • 이제 뒤로 가기 키를 누르면 애플리케이션이 종료되지 않고 백그라운드로 이동합니다. 자세한 내용은 ‘뒤로 가기 키 및 뒤로 가기 제스처’를 참조하십시오.
  • TalkBack에 대한 접근성 개선 사항:
    • Qt가 이제 ACTION_SHOW_ON_SCREEN 동작에 반응합니다.
    • Qt는 이제 스크롤된 뷰포트 및 스크롤 위치 변경 사항을 보고합니다.
    • Qt는 이제 확장 가능(expandable) 및 확장됨(expanded) 상태를 지원합니다.
    • 접근성 포커스가 텍스트 입력 필드로 이동할 때 더 이상 소프트 키보드가 열리지 않습니다.
    • motionPreference 힌트가 이제 시스템의 ‘ Remove animations ’ 설정을 반영합니다.
  • androidtestrunner는 이제 --serial 및 --output 옵션을 인식하고, 테스트 실행 중 기기 연결이 끊어진 것을 감지하며, 개선된 충돌 및 애플리케이션 응답 없음(ANR) 진단 정보를 출력합니다.
  • Qt는 이제 번들된 FFmpeg 빌드에 OpenSSL 라이브러리가 필요한 경우, OPENSSL_ROOT_DIR 또는 vcpkg를 통해 해당 라이브러리를 찾아 자동으로 배포합니다.
  • Gradle 템플릿은 더 이상 resConfig "en" 를 강제하지 않습니다.
Qt Quick Android용

iOS

  • QStandardPaths::PublicShareLocation 이제 Documents 디렉터리 내의 이전에 생성된 경로 대신 <APPROOT>/Public ( NSSharedPublicDirectory 와 일치)를 반환합니다.
  • standardLocations(PicturesLocation)에는 더 이상 쓰기 가능한 Documents/Pictures 경로에 대한 중복 항목이 포함되어 있지 않습니다.
  • QStandardPaths::TemplatesLocation 이제 기존 문서와 일치하도록 iOS에서는 지원되지 않는다고 올바르게 표시됩니다.

임베디드 플랫폼

Boot to Qt 및 Qt Onboard

  • Qt 6.12 LTS부터, Qt Online Installer 또는 Qt 계정을 통해 미리 빌드된 Boot to Qt 이미지를 더 이상 다운로드할 수 없습니다.

    바이너리 대신, 두 가지 컨테이너 기반의 배포물이 도입되었습니다:

    • 빌드 컨테이너: 필요한 모든 빌드 도구가 미리 설치된 즉시 사용 가능한 환경으로, 대상 하드웨어용 Yocto 기반 리눅스 이미지를 신속하게 빌드할 수 있게 해줍니다.
    • 데모 컨테이너: Qt Demo Launcher와 함께, Qt의 기능을 바로 체험할 수 있도록 선별된 데모 세트가 포함되어 있습니다.

    이 컨테이너들은 Qt 6.12 LTS 패치 릴리스 주기 동안 단계적으로 도입되며, Qt 6.12.4 릴리스에 앞서 완전한 컨테이너 기반 배포 체계가 구축될 예정입니다.

  • 새로운 플랫폼:
    • Orange Pi 2
    • NXP i.MX95
    • Qualcomm Dragonwing IQ6
    • 퀄컴 드래곤윙 IQ9
    • Renesas RZ/G3E

실시간 운영 체제

QNX
  • QNX에서 Vulkan 지원이 추가되었습니다.
  • Qt Multimedia 이제 QNX 8.0에서 빌드됩니다. QNX SDP 8.0용 오디오 백엔드가 아직 구현되지 않아 오디오 재생 및 녹음 기능은 아직 사용할 수 없습니다.
VxWorks
  • VxWorks 26.03 지원이 추가되었습니다.

WebAssembly

  • QAudioSource 및 QAudioSink 는 이제 OpenAL 대신 Web Audio API AudioWorklets 백엔드를 사용하여 브라우저 네이티브의 저지연 오디오 캡처를 지원합니다.
  • 이제 다음을 사용할 때 제로 카피 렌더링을 위해 texImage2D 를 사용하여 비디오 프레임이 WebGL로 업로드됩니다. Qt Quick.
  • QCameraFormat 지원이 추가되었습니다.

API 변경 사항 목록

이 페이지에는 Qt 6.12의 API 변경 사항에 대한 개요가 포함되어 있습니다:

알려진 문제

Qt 6.12의 알려진 문제에 대한 정보는 Qt 위키를 참조하십시오.

© 2026 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.