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.
Install the Microsoft Visual C (MSVC) compiler toolset. If you have a recent version of Visual Studio, open the Visual Studio Installer from the Windows Start menu and verify that the C workload is checked. If it's not installed, then check the box and click the Modify button in the installer. Both 2015 and 2017 have the redists named vcredist.exe, so vcredistx86.exe as one example. The redistributables are also where they have always been, in the VC directory. This moved a bit in VS 2017, but should still be easy to find. On my system the redistributables are located at.
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
Distribution | Architecture | Compiler | Notes |
---|---|---|---|
openSUSE 15.1 | x86_64 | GCC 5 or later, GCC 7.5.0, ICC 19.1 | |
SUSE Linux Enterprise Server | x86_64 | GCC 5 or later, GCC 10.2.1 | |
Red Hat Enterprise Linux 7.6 | x86_64 | GCC 5.3.1 via devtoolset-4 | |
Ubuntu 18.04 | x86_64 | GCC 5 or later, GCC 9.3.0 | |
Generic Linux | x86 and x86_64 | GCC (5 or later), ICC 18.x |
Target Platform | Architecture | Build Environment |
---|---|---|
macOS 10.13, 10.14, 10.15 | x86_64 and x86_64h | Xcode 11 or 12 (10.15 SDK) |
Operating System | Architecture | Compiler | Notes |
---|---|---|---|
Windows 10 | x86 and x86_64 | 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
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 7.x (x86_64), macOS 10.15, Windows 10 (x86_64) |
Target Platform | Architecture | Build Environment | Notes |
---|---|---|---|
iOS 12, iOS 13 | armv8 (arm64 ) | Xcode 11 (iOS 13.2 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. |
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.
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
The reference configurations are run on the continuous integration (CI) system within Qt Project. In addition, 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.
Details of the reference configurations are stored as provisioning scripts in the qt5 Git repository.
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
Distribution | Architecture | Compiler | Notes |
---|---|---|---|
openSUSE 15.1 | x86_64 | GCC 5 or later, GCC 7.5.0, ICC 19.1 | |
SUSE Linux Enterprise Server | x86_64 | GCC 5 or later, GCC 10.2.1 | |
Red Hat Enterprise Linux 7.6 | x86_64 | GCC 5.3.1 via devtoolset-4 | |
Ubuntu 18.04 | x86_64 | GCC 5 or later, GCC 9.3.0 | |
Generic Linux | x86 and x86_64 | GCC (5 or later), ICC 18.x |
Target Platform | Architecture | Build Environment |
---|---|---|
macOS 10.13, 10.14, 10.15 | x86_64 and x86_64h | Xcode 11 or 12 (10.15 SDK) |
Operating System | Architecture | Compiler | Notes |
---|---|---|---|
Windows 10 | x86 and x86_64 | 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
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 7.x (x86_64), macOS 10.15, Windows 10 (x86_64) |
Target Platform | Architecture | Build Environment | Notes |
---|---|---|---|
iOS 12, iOS 13 | armv8 (arm64 ) | Xcode 11 (iOS 13.2 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. |
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.
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
The reference configurations are run on the continuous integration (CI) system within Qt Project. In addition, 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.
Details of the reference configurations are stored as provisioning scripts in the qt5 Git repository.
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
Msvc 2017 Download
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.
Msvc 2017 Compiler
- Deploying Qt Applications
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.
Msvc 2017 Compiler Download
© 2021 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.