Commit b08ca863 authored by Friedemann Kleint's avatar Friedemann Kleint
Browse files

Windows: Adapt deployment documentation to relocatable builds


Update the command line help of windeployqt and split out the
non-relocatable part into a separate section.

Fixes: QTBUG-81612
Task-number: QTBUG-14150
Change-Id: Ia0691416e6fd274c4a93d646a92f3deca84257ab
Reviewed-by: default avatarJoerg Bornemann <joerg.bornemann@qt.io>
parent 97083efc
No related merge requests found
Showing with 29 additions and 11 deletions
...@@ -610,8 +610,11 @@ ...@@ -610,8 +610,11 @@
directory is passed with the \c{--qmldir} argument, \c windeployqt uses the directory is passed with the \c{--qmldir} argument, \c windeployqt uses the
\c qmlimportscanner tool to scan QML files inside the directory for QML import \c qmlimportscanner tool to scan QML files inside the directory for QML import
dependencies. Identified dependencies are then copied to the executable's dependencies. Identified dependencies are then copied to the executable's
directory. The hardcoded local paths in Qt5Core.dll are furthermore replaced directory.
with relative ones.
In case Qt was built with the configure switch \c{-relocatable} turned off,
\c windeployqt replaces the hardcoded local paths in Qt5Core.dll by
relative ones.
For Windows desktop applications, the required runtime files for the compiler For Windows desktop applications, the required runtime files for the compiler
are also copied to the deployable folder by default (unless the option are also copied to the deployable folder by default (unless the option
...@@ -627,7 +630,7 @@ ...@@ -627,7 +630,7 @@
\badcode \badcode
Usage: windeployqt [options] [files] Usage: windeployqt [options] [files]
Qt Deploy Tool 5.12.2 Qt Deploy Tool 5.14.1
The simplest way to use windeployqt is to add the bin directory of your Qt The simplest way to use windeployqt is to add the bin directory of your Qt
installation (e.g. <QT_DIR\bin>) to the PATH variable and then run: installation (e.g. <QT_DIR\bin>) to the PATH variable and then run:
...@@ -637,7 +640,8 @@ ...@@ -637,7 +640,8 @@
windeployqt --qmldir <path-to-app-qml-files> <path-to-app-binary> windeployqt --qmldir <path-to-app-qml-files> <path-to-app-binary>
Options: Options:
-?, -h, --help Displays this help. -?, -h, --help Displays help on commandline options.
--help-all Displays help including Qt specific options.
-v, --version Displays version information. -v, --version Displays version information.
--dir <directory> Use directory instead of binary directory. --dir <directory> Use directory instead of binary directory.
--libdir <path> Copy libraries to path. --libdir <path> Copy libraries to path.
...@@ -652,11 +656,13 @@ ...@@ -652,11 +656,13 @@
--no-plugins Skip plugin deployment. --no-plugins Skip plugin deployment.
--no-libraries Skip library deployment. --no-libraries Skip library deployment.
--qmldir <directory> Scan for QML-imports starting from directory. --qmldir <directory> Scan for QML-imports starting from directory.
--qmlimport <directory> Add the given path to the QML module search locations. --qmlimport <directory> Add the given path to the QML module search
locations.
--no-quick-import Skip deployment of Qt Quick imports. --no-quick-import Skip deployment of Qt Quick imports.
--no-translations Skip deployment of translations. --no-translations Skip deployment of translations.
--no-system-d3d-compiler Skip deployment of the system D3D compiler. --no-system-d3d-compiler Skip deployment of the system D3D compiler.
--compiler-runtime Deploy compiler runtime (Desktop only). --compiler-runtime Deploy compiler runtime (Desktop only).
--no-virtualkeyboard Disable deployment of the Virtual Keyboard.
--no-compiler-runtime Do not deploy compiler runtime (Desktop only). --no-compiler-runtime Do not deploy compiler runtime (Desktop only).
--webkit2 Deployment of WebKit2 (web process). --webkit2 Deployment of WebKit2 (web process).
--no-webkit2 Skip deployment of WebKit2. --no-webkit2 Skip deployment of WebKit2.
...@@ -1050,12 +1056,24 @@ ...@@ -1050,12 +1056,24 @@
be located within a specific subdirectory (such as \c printsupport, be located within a specific subdirectory (such as \c printsupport,
\c imageformats or \c sqldrivers) within your distribution directory. \c imageformats or \c sqldrivers) within your distribution directory.
The search path for Qt plugins is hard-coded into the QtCore library. As of Qt 5.14, the libraries are relocatable unless Qt was built with
By default, the plugins subdirectory of the Qt installation is the first the configure switch \c{-relocatable} turned off. The search paths for
plugin search path. However, pre-determined paths like the default one Qt plugins are relative to the location of the QtCore library and no
have certain disadvantages. For example, they may not exist on the target further steps are required to ensure plugins are found after installing
machine. For that reason, you need to examine various alternatives to make the application on the target machine.
sure that the Qt plugins are found:
\section2 Ensuring Plugins Are Found when Using Non-Relocatable Builds
For non-relocatable builds, additional steps must be taken to ensure
plugins are found after the application has been installed on the target
machine.
In this case, the search path for Qt plugins is hard-coded into the QtCore
library. By default, the plugins subdirectory of the Qt installation is
the first plugin search path. However, pre-determined paths like the
default one have certain disadvantages. For example, they may not
exist on the target machine. For that reason, you need to examine various
alternatives to make sure that the Qt plugins are found:
\list \list
......
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment