1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
|
/****************************************************************************
**
** Copyright (C) 2016 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of the documentation of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:FDL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU Free Documentation License Usage
** Alternatively, this file may be used under the terms of the GNU Free
** Documentation License version 1.3 as published by the Free Software
** Foundation and appearing in the file included in the packaging of
** this file. Please review the following information to ensure
** the GNU Free Documentation License version 1.3 requirements
** will be met: https://www.gnu.org/licenses/fdl-1.3.html.
** $QT_END_LICENSE$
**
****************************************************************************/
/*!
\page qtwebengine-deploying.html
\title Deploying Qt WebEngine Applications
The way to package and deploy applications varies between operating systems.
For Windows and \macos, \l{The Windows Deployment Tool}{windeployqt} and
\l{Deploying Applications on OS X}{macdeployqt} 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, see \l {Deploying Qt Applications}.
\section1 Target Platforms
Qt WebEngine does try to support all \l{Supported Platforms} of Qt. However,
due to different requirements of Chromium this is not always possible. Known
limitations are:
\list
\li Qt WebEngine currently supports only Windows, Linux, and \macos.
\li On Windows, Qt WebEngine only supports Windows Vista or newer as
target platform. Due to use of newer API in Chromium, Windows XP is
not supported. WinRT is not supported, either.
\endlist
\section1 Deploying Applications Manually
When manually deploying applications that depend on Qt WebEngine, the
following files might have to be deployed:
\list
\li Libraries
\li QML imports
\li Qt WebEngine process
\li Resources
\li Translations
\li Audio and video codecs
\endlist
\section2 Deploying Libraries
The following libraries must be deployed with applications that depend on
Qt WebEngine:
\list
\li QtWebEngineCore library
\li QtWebEngineWidgets or QtWebEngine libraries, depending on
application type
\endlist
\section2 Deploying QML Imports
If Qt Quick integration is used in the application, the QtWebEngine import
directory needs to be deployed.
\section2 Deploying Qt WebEngine Processes
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.
The WebEngine process is executed for each QWebEngineView or WebEngineView
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 the \c QtWebEngineProcess executable in
the directory that
QLibraryInfo::location(QLibraryInfo::LibraryExecutablesPath) returns.
For Qt installations, this is \c QTDIR/libexec (Linux) or \c QTDIR\bin
(Windows). The path can be changed by defining a \c qt.conf file, for
example. Alternatively, an executable path can be set as a value of the
\c QTWEBENGINEPROCESS_PATH environment variable. On \macos, Qt WebEngine
looks for the executable in \c .app/Helpers/QtWebEngineProcess.
\section2 Deploying Resources
Qt WebEngine requires the following resource files:
\list
\li \c qtwebengine_resources.pak contains the resources needed by
Chromium.
\li \c qtwebengine_devtools_resources.pak contains tools for remote
debugging.
\li \c qtwebengine_resources_100p.pak contains images suitable for low
resolution displays.
\li \c qtwebengine_resources_200p.pak contains images suitable for high
DPI displays.
\li \c 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.
\endlist
Resources are searched from the following locations:
\list
\li On Linux and Windows: the \c resources directory in the directory
specified by QLibraryInfo::location(QLibraryInfo::DataPath)
\li On \macos: \c .app/Content/Resources
\endlist
\section2 Translations
Locale data (such as \c en-US.pak) is searched form the following locations:
\list
\li On \macos: \c .app/Content/Resources
\li On Linux and Windows: \c qtwebengine_locales directory in the
directory specified by
QLibraryInfo::location(QLibraryInfo::TranslationsPath)
\endlist
\section2 Deploying Audio and Video Codecs
To support HTML5 video, you must additionally deploy
\c ffmpegsumo.dll (WebM codec plugin) into the \c qtwebengine directory
under the application install path or under the path that the
\c PluginsPath variable was set to in \c qt.conf.
*/
|