The way to package and deploy applications varies between operating systems. For Windows and macOS,windeployqt andmacdeployqt automate the steps to generate a stand-alone application package.
When manually deploying applications that depend on Qt WebEngine, all the files that are required to run the application have to be included: libraries, QML imports, plugins, and translations.
For more information, seeDeploying Qt Applications.
Qt WebEngine does try to support allSupported Platforms of Qt. However, due to different requirements of Chromium this is not always possible. Known limitations are:
When manually deploying applications that depend on Qt WebEngine, the following files might have to be deployed:
The following libraries must be deployed with applications that depend on Qt WebEngine:
If Qt Quick integration is used in the application, theQtWebEngine import directory needs to be deployed.
Qt WebEngine takes advantage of the multi-process model that the Chromium project offers. The multi-process model requires that the Qt WebEngine Process executable be deployed alongside your application.
TheWebEngine process is executed for eachQWebEngineView orWebEngineView instance. For example, a browser application with two tabs open should have two separate instances of the process running. This is a common approach used by most modern web engines to provide a stable browsing experience.
At runtime, Qt WebEngine looks for theQtWebEngineProcess
executable in the directory thatQLibraryInfo::location(QLibraryInfo::LibraryExecutablesPath) returns. For Qt installations, this isQTDIR/libexec
(Linux) orQTDIR\bin
(Windows). The path can be changed by defining aqt.conf
file, for example. Alternatively, an executable path can be set as a value of theQTWEBENGINEPROCESS_PATH
environment variable. On macOS, Qt WebEngine looks for the executable in.app/Helpers/QtWebEngineProcess
.
Qt WebEngine requires the following resource files:
qtwebengine_resources.pak
contains the resources needed by Chromium.qtwebengine_devtools_resources.pak
contains tools for remote debugging.qtwebengine_resources_100p.pak
contains images suitable for low resolution displays.qtwebengine_resources_200p.pak
contains images suitable for high DPI displays.icudtl.dat
provides support for International Components for Unicode (ICU). It is the Chromium version of ICU, which is not needed if Qt WebEngine was configured to use the system ICU.Resources are searched from the following locations:
resources
directory in the directory specified byQLibraryInfo::location(QLibraryInfo::DataPath).app/Content/Resources
Locale data (such asen-US.pak
) is searched form the following locations:
.app/Content/Resources
qtwebengine_locales
directory in the directory specified byQLibraryInfo::location(QLibraryInfo::TranslationsPath)If yourWebEngine application is built using the Qt Quick Compiler, and the application ships JavaScript files inside .qrc resources, and these files are supposed to be loaded from inside HTML pages, make sure to specify the resource files in aQTQUICK_COMPILER_SKIPPED_RESOURCES
qmake variable inside your project. This prevents the Qt Quick Compiler from trying to generate C++ code for the corresponding JavaScript code, as well as removing the original JavaScript code from the Qt resources file, which would lead to broken HTML pages. For example:
QTQUICK_COMPILER_SKIPPED_RESOURCES+= resources/my_resource.qrc
© 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 theGNU 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.
Qt Group includes The Qt Company Oy and its global subsidiaries and affiliates.