- Qt 5.15
- Supported Platforms
- Qt 5.15.12 Reference Documentation

# Supported Platforms

Qt is a commercial and open source licensed cross-platform application and UI framework. It is developed by The Qt Company, together with the Qt Project Community under an open source governance model.

Using Qt, you can write GUI applications once and deploy them across desktop, mobile and embedded operating systems without rewriting the source code.

Qt is supported on a variety of 32-bit and 64-bit platforms, and can usually be built on each platform with GCC, a vendor-supplied compiler, or a third party compiler as indicated in the overview below.

Open GL (ES) 2.0, DirectX 9 or 11 (with ANGLE), or an alternative renderer is required for Qt Quick 2. Widgets can be used without hardware acceleration.

In Qt 5 all platforms are created using the Qt Platform Abstraction (QPA), which makes it easy to port Qt into a new operating system.

The following platforms are supported in Qt 5.15. For support information for prior Qt releases, please consult the relevant version in the Qt Documentation Archives.

Configurations in bold are Reference Configurations.

Note: Support for specific configurations or operating system versions may end before the support for Qt 5.15 does. A subsequent patch release of Qt 5.15 may drop support for a configuration as a reference configuration or replace it with a currently-supported version.

## Desktop Platforms

### Linux/X11

Distribution | Architecture | Compiler | Notes
--- | --- | --- | ---
openSUSE 15.1 | `x86_64` | GCC 5 or later, GCC 7, ICC 19.1 |
SUSE Linux Enterprise Server | `x86_64` | GCC 5 or later, GCC 10 |
Red Hat Enterprise Linux 8.4 | `x86_64` | GCC 10.1 via gcc-toolset-10 |
Red Hat Enterprise Linux 7.6 | `x86_64` | GCC 5.3.1 via devtoolset-4 |
Ubuntu 20.04 | `x86_64` | GCC 5 or later, GCC 9 |
Ubuntu 18.04 | `x86_64` | GCC 5 or later, GCC 9 |
Generic Linux | `x86` and `x86_64` | GCC (5 or later), ICC 18.x |

### macOS

Target Platform | Architecture | Build Environment
--- | --- | ---
macOS 10.13, macOS 10.14, macOS 10.15, macOS 11, macOS 12 | `x86_64` and `x86_64h` and `arm64` | Xcode 11 or Xcode 12 or Xcode 13 (12 SDK)

### Windows

Operating System | Architecture | Compiler | Notes
--- | --- | --- | ---
Windows 11 21H2 | `x86` and `x86_64` |  |
Windows 10 21H2 | `x86` and `x86_64` | MSVC 2022, MSVC 2019, MSVC 2017, MSVC 2015, MinGW 8.1 |
Windows 8.1 | `x86` and `x86_64` | MSVC 2019, MSVC 2017, MinGW 8.1 |
Windows 7 | `x86` and `x86_64` | MSVC 2019, MSVC 2017, MinGW 8.1 | MinGW-builds GCC 8.1.0 (x86)

## Mobile Platforms

### Android

Platform Version | Architecture | Compiler | Build Environment
--- | --- | --- | ---
Android 5.0 or later (that is, API Level 21 and up) | `armv7a` and `x86`, `arm64-v8` and `x86_64` | Clang as provided by Google, MinGW 8.1 | RHEL 8.x (x86_64), RHEL 7.x (x86_64), macOS 10.15, Windows 10 21H2 (x86_64)

### iOS/tvOS/watchOS

Target Platform | Architecture | Build Environment | Notes
--- | --- | --- | ---
iOS 12, iOS 13, iOS 14, iOS 15 | `armv8` (`arm64`) | Xcode 11 (iOS 13.2 SDK), Xcode 12 (iOS 14 SDK), Xcode 13 (iOS 15 SDK) |
tvOS 12, tvOS 13 | `armv8` (`arm64`) | Xcode 11 (tvOS 13 SDK) | Technology Preview
watchOS 5, watchOS 6 | `armv7k` | Xcode 11 (watchOS 6 SDK) | Technology Preview. No UI.

### Universal Windows Platform (UWP)

Platform Version | Architecture | Compiler | Build Environment
--- | --- | --- | ---
Universal Windows Platform 10 | `x86`, `x86_64`, and `armv7` | MSVC 2019, MSVC 2017 | Windows 10

Universal Windows Platforms include Windows 10, Windows 10 IoT devices, Xbox One, and HoloLens.

### Qt for WebAssembly

Target Browser | Device
--- | ---
Chrome | Desktop
FireFox | Desktop
Safari | Desktop, Mobile
Edge (Chrome) | Desktop
Android Browser | Mobile

If the browser supports WebAssembly then Qt should run.

Note: Qt has a fixed WebGL requirement, also for apps that do not use WebGL directly. Browsers often blacklist WebGL for older/unsupported GPUs.

## Embedded Platforms

For embedded platform support, including Embedded Linux, INTEGRITY, QNX, and VxWorks, please consult the Qt for Device Creation documentation.

## Reference Configurations

Reference configurations are the primary focus of development. They are subjected to unit test suite and other internal testing tools on a frequent basis (prior to new version releases, source tree branching, and at other significant period points in the development process). Errors or bugs discovered in these platforms are prioritized for correction. Significant errors discovered in tested configurations can impact release dates.

Any configurations not listed above are not actively tested by the Qt Project. However, Qt may run on configurations other than those actively tested on, and additional configurations may be raised to tested state, if sufficient effort is made to bring continuous integration to an acceptable state for that particular configuration. The reference configurations are subject to change during the lifetime of a Qt release.

The Qt Company provides support for the officially supported platforms and configurations. The Qt Company, Qt partners, open source projects and community users are also able to provide assistance with various different platforms and configurations.

## Availability of Packages

You can download the Qt 5 installers and source packages from the Downloads page. For more information, visit the Getting Started with Qt page.

Note: All the supported configurations are not provided as binary packages in the Qt installer. However, the intention is to provide the most widely-used reference configurations for the developer's convenience.

### Exceptions

Individual modules might be available only on some platforms, or they might not support all configurations. For example, as Qt WebEngine has Chromium as a third-party dependency, platform or configuration limitations upstream also apply to Qt WebEngine.

The documentation for each module contains detailed information about any exceptions the module has from the general platform and configuration support as described on this page.

## Deployment of Qt Applications

The deployment procedure for each platform is different and they are covered in greater detail in their platform pages. Meanwhile, there is a deployment article for summarizing the deployment procedure in general.

- Deploying Qt Applications
  - Android
  - iOS
  - Linux/X11
  - macOS
  - Windows

## General Legal Disclaimer

Please note that Qt is offered on an "as is" basis without warranty of any kind and that our products are not error or bug free. To the maximum extent permitted by applicable law, The Qt Company on behalf of itself and its suppliers, disclaims all warranties and conditions, either express or implied, including, but not limited to, implied warranties of merchantability, fitness for a particular purpose, title and non-infringement with regard to the Licensed Software.