glfs/x/lib/qt5.xml
Pierre Labastie e71a98d941 Last (up to mistakes) round of role="runtime|nodep". For the "X" chapter
git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@19240 af4574ff-66df-0310-9fd7-8a98e5e911e0
2017-09-16 09:39:13 +00:00

1009 lines
34 KiB
XML

<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
<!ENTITY % general-entities SYSTEM "../../general.ent">
%general-entities;
<!ENTITY qt5-major "5.9">
<!ENTITY qt5-url "https://download.qt.io/archive/qt/&qt5-major;/&qt5-version;/single">
<!ENTITY qt5-download-http "&qt5-url;/qt-everywhere-opensource-src-&qt5-version;.tar.xz">
<!ENTITY qt5-download-ftp " ">
<!ENTITY qt5-md5sum "77b4af61c49a09833d4df824c806acaf">
<!ENTITY qt5-size "440 MB">
<!ENTITY qt5-buildsize "8.8 GB (214 MB installed)">
<!ENTITY qt5-time "26 SBU (using parallelism=4)">
]>
<sect1 id="qt5" xreflabel="Qt-&qt5-version;">
<?dbhtml filename="qt5.html" ?>
<sect1info>
<othername>$LastChangedBy$</othername>
<date>$Date$</date>
</sect1info>
<title>Qt-&qt5-version;</title>
<indexterm zone="qt5">
<primary sortas="a-Qt">Qt</primary>
</indexterm>
<sect2 role="package">
<title>Introduction to Qt5</title>
<para>
<application>Qt5</application> is a cross-platform application framework
that is widely used for developing application software with a graphical
user interface (GUI) (in which cases <application>Qt5</application> is
classified as a widget toolkit), and also used for developing non-GUI
programs such as command-line tools and consoles for servers. One of the
major users of <application>Qt</application> is <application>KDE
Frameworks 5 (KF5)</application>.
</para>
&lfs81_checked;
<bridgehead renderas="sect3">Package Information</bridgehead>
<itemizedlist spacing="compact">
<listitem>
<para>
Download (HTTP): <ulink url="&qt5-download-http;"/>
</para>
</listitem>
<listitem>
<para>
Download (FTP): <ulink url="&qt5-download-ftp;"/>
</para>
</listitem>
<listitem>
<para>
Download MD5 sum: &qt5-md5sum;
</para>
</listitem>
<listitem>
<para>
Download size: &qt5-size;
</para>
</listitem>
<listitem>
<para>
Estimated disk space required: &qt5-buildsize;
</para>
</listitem>
<listitem>
<para>
Estimated build time: &qt5-time;
</para>
</listitem>
</itemizedlist>
<bridgehead renderas="sect3">Qt5 Dependencies</bridgehead>
<bridgehead renderas="sect4">Required</bridgehead>
<para role="required">
<xref linkend="python2"/> and
<xref linkend="xorg7-lib"/>
</para>
<bridgehead renderas="sect4">Recommended</bridgehead>
<para role="recommended">
<xref linkend="alsa-lib"/>,
<xref linkend="cacerts"/>,
<xref linkend="cups"/>,
<xref linkend="glib2"/>,
<xref linkend="gst10-plugins-base"/> (QtMultimedia backend),
<xref linkend="harfbuzz"/>,
<xref linkend="icu"/>,
<xref linkend="jasper"/>,
<xref linkend="libjpeg"/>,
<xref linkend="libmng"/>,
<xref linkend="libpng"/>,
<xref linkend="libtiff"/>,
<xref linkend="libxkbcommon"/>,
<xref linkend="mesa"/>,
<xref linkend="mtdev"/>,
<xref linkend="openssl10"/>,
<xref linkend="pcre2"/>,
<xref linkend="sqlite"/>,
<xref linkend="wayland"/> (<application>Mesa</application>
must be built with <application>Wayland</application> EGL
backend),
<xref linkend="xcb-util-image"/>,
<xref linkend="xcb-util-keysyms"/>,
<xref linkend="xcb-util-renderutil"/>, and
<xref linkend="xcb-util-wm"/>
</para>
<bridgehead renderas="sect4">Optional</bridgehead>
<para role="optional">
<xref role="runtime" linkend="bluez"/> (runtime, used by QtConnectivity
module),
<xref linkend="ibus"/>,
<xref linkend="libinput"/>, <!-- needs -libinput switch -->
<xref linkend="mariadb"/> or <ulink url="http://www.mysql.com/">MySQL</ulink>,
<xref linkend="pciutils"/> (required for QtWebEngine),
<xref linkend="postgresql"/>,
<xref linkend="pulseaudio"/>,
<xref linkend="unixodbc"/>, and
<ulink url="http://www.firebirdsql.org/">Firebird</ulink>
</para>
<para condition="html" role="usernotes">User Notes:
<ulink url="&blfs-wiki;/qt5"/>
</para>
</sect2>
<sect2 role="qt5-prefix">
<title>Setting the installation prefix</title>
<bridgehead renderas="sect3">Installing in /opt/qt5</bridgehead>
<para>
The BLFS editors recommend installing <application>Qt5</application> in a
directory other than <filename class="directory">/usr</filename>, ie
<filename class="directory">/opt/qt5</filename>. To do this, set the
following environment variable:
</para>
<screen><userinput>export QT5PREFIX=/opt/qt5</userinput></screen>
<tip>
<para>
Sometimes, the installation paths are hardcoded into installed files.
This is the reason why <filename class="directory">/opt/qt5</filename>
is used as installation prefix instead of <filename
class="directory">/opt/qt-&qt5-version;</filename>. To create a
versioned <application>Qt5</application> directory, you may rename
the directory and create a symlink:
</para>
<screen role="root"><userinput>mkdir /opt/qt-&qt5-version;
ln -sfnv qt-&qt5-version; /opt/qt5</userinput></screen>
<para>
Later on, you may want to install other versions of
<application>Qt5</application>. To do that, just remove the symlink
and use <filename class="directory">/opt/qt5</filename> as the
prefix again. Which version of <application>Qt5</application> you
use depends only on where the symlink points.
</para>
</tip>
</sect2>
<sect2 role="installation">
<title>Installation of Qt5</title>
<warning>
<para>
If <application>Qt5</application> is being reinstalled into the
same directory as an existing instance, run the commands done by
<systemitem class="username">root</systemitem>, such as
<command>make install</command>, from a console or non-Qt5 based
window manager. It overwrites <application>Qt5</application>
libraries that should not be in use during the install process.
</para>
</warning>
<caution>
<para>
If you did not install some of the recommended dependencies, examine
<command>./configure --help</command> output to check how to disable
them or use internal versions bundled in the source tarball.
</para>
</caution>
<note>
<para>
The build time and space required for the full
<application>Qt5</application> is quite long. The instructions below
do not build the tutorials and examples. Removing the
<parameter>-nomake</parameter> line will create a complete build.
</para>
</note>
<note>
<para>
The BLFS editors do not recommend installing <application>Qt5</application>
into the /usr hierarchy because it becomes difficult to find
components and to update to a new version. If you do want to install
<application>Qt5</application> in /usr, the directories need to
be specified explicitly. In this case, set QT5PREFIX=/usr and add
the following to the configure arguments below:
</para>
<screen role="nodump"><userinput> -archdatadir /usr/lib/qt5 \
-bindir /usr/bin \
-plugindir /usr/lib/qt5/plugins \
-importdir /usr/lib/qt5/imports \
-headerdir /usr/include/qt5 \
-datadir /usr/share/qt5 \
-docdir /usr/share/doc/qt5 \
-translationdir /usr/share/qt5/translations \
-examplesdir /usr/share/doc/qt5/examples</userinput></screen>
</note>
<!-- Not needed with mariadb-10.2.8, but a symlink for mysql_version.h
on the mariadb page, is needed.
<para>
If you have <xref linkend="mariadb"/> installed, fix a build issue with
with <application>MySQL</application> compatibility:
</para>
<screen><userinput>sed '/qsqlresult_p.h&gt;/a#include &lt;mysql/mysql_version.h&gt;' \
-i qtbase/src/plugins/sqldrivers/mysql/qsql_mysql.cpp</userinput></screen>
-->
<para>
Install <application>Qt5</application> by running the following commands:
</para>
<screen><userinput>echo "INCLUDEPATH += /usr/include/openssl-1.0" >> \
qtbase/src/network/network.pro &amp;&amp;
export OPENSSL_LIBS='-L/usr/lib/openssl-1.0 -lssl -lcrypto' &amp;&amp;
./configure -prefix $QT5PREFIX \
-sysconfdir /etc/xdg \
-confirm-license \
-opensource \
-dbus-linked \
-openssl-linked \
-system-harfbuzz \
-system-sqlite \
-nomake examples \
-no-rpath \
-skip qtwebengine &amp;&amp;
make</userinput></screen>
<para>
This package does not come with a test suite.
</para>
<para>
Now, as the <systemitem class="username">root</systemitem> user:
</para>
<screen role="root"><userinput>make install</userinput></screen>
<para>
Remove references to the build directory from installed library
dependency (prl) <!--and profile include (pri)--> files by running the following
command as the <systemitem class="username">root</systemitem> user:
</para>
<screen role="root"><userinput>find $QT5PREFIX/ -name \*.prl \
-exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;</userinput></screen>
<para>
Install images and create the menu entries for installed applications.
The <envar>QT5BINDIR</envar> variable is used here to point to the
directory for the executable programs. If you have changed the bindir
above, <envar>QT5BINDIR</envar> will need to be adjusted below. Be sure
that the <envar>QT5BINDIR</envar> variable is defined in root's
environment and as the <systemitem class="username">root</systemitem>
user:
</para>
<screen role="root"><userinput>QT5BINDIR=$QT5PREFIX/bin
install -v -dm755 /usr/share/pixmaps/ &amp;&amp;
install -v -Dm644 qttools/src/assistant/assistant/images/assistant-128.png \
/usr/share/pixmaps/assistant-qt5.png &amp;&amp;
install -v -Dm644 qttools/src/designer/src/designer/images/designer.png \
/usr/share/pixmaps/designer-qt5.png &amp;&amp;
install -v -Dm644 qttools/src/linguist/linguist/images/icons/linguist-128-32.png \
/usr/share/pixmaps/linguist-qt5.png &amp;&amp;
install -v -Dm644 qttools/src/qdbus/qdbusviewer/images/qdbusviewer-128.png \
/usr/share/pixmaps/qdbusviewer-qt5.png &amp;&amp;
install -dm755 /usr/share/applications &amp;&amp;
cat &gt; /usr/share/applications/assistant-qt5.desktop &lt;&lt; EOF
<literal>[Desktop Entry]
Name=Qt5 Assistant
Comment=Shows Qt5 documentation and examples
Exec=$QT5BINDIR/assistant
Icon=assistant-qt5.png
Terminal=false
Encoding=UTF-8
Type=Application
Categories=Qt;Development;Documentation;</literal>
EOF
cat &gt; /usr/share/applications/designer-qt5.desktop &lt;&lt; EOF
<literal>[Desktop Entry]
Name=Qt5 Designer
GenericName=Interface Designer
Comment=Design GUIs for Qt5 applications
Exec=$QT5BINDIR/designer
Icon=designer-qt5.png
MimeType=application/x-designer;
Terminal=false
Encoding=UTF-8
Type=Application
Categories=Qt;Development;</literal>
EOF
cat &gt; /usr/share/applications/linguist-qt5.desktop &lt;&lt; EOF
<literal>[Desktop Entry]
Name=Qt5 Linguist
Comment=Add translations to Qt5 applications
Exec=$QT5BINDIR/linguist
Icon=linguist-qt5.png
MimeType=text/vnd.trolltech.linguist;application/x-linguist;
Terminal=false
Encoding=UTF-8
Type=Application
Categories=Qt;Development;</literal>
EOF
cat &gt; /usr/share/applications/qdbusviewer-qt5.desktop &lt;&lt; EOF
<literal>[Desktop Entry]
Name=Qt5 QDbusViewer
GenericName=D-Bus Debugger
Comment=Debug D-Bus applications
Exec=$QT5BINDIR/qdbusviewer
Icon=qdbusviewer-qt5.png
Terminal=false
Encoding=UTF-8
Type=Application
Categories=Qt;Development;Debugger;</literal>
EOF</userinput></screen>
<para>
Some packages such as <xref linkend='vlc'/> look for certain
executables with a -qt5 suffix. Run the following command as the
<systemitem class="username">root</systemitem> user
to create the necessary symlinks:
</para>
<screen role="root"><userinput>for file in moc uic rcc qmake lconvert lrelease lupdate; do
ln -sfrvn $QT5BINDIR/$file /usr/bin/$file-qt5
done</userinput></screen>
</sect2>
<sect2 role="commands">
<title>Command Explanations</title>
<para>
<parameter>-confirm-license</parameter>: Accept license
without prompting user during configuration.
</para>
<para>
<parameter>-opensource</parameter>: Install the opensource
version of <application>Qt</application>.
</para>
<para>
<parameter>-nomake examples</parameter>: This switch
disables building of the example programs included
in the source tarball. Remove it if you want to build
them.
</para>
<para>
<parameter>-system-sqlite</parameter>: This switch enables use
of the system version of <application>SQLite</application>.
</para>
<para>
<parameter>-dbus-linked -openssl-linked</parameter>: These
switches enable explicit linking of the
<application>D-Bus</application> and
<application>OpenSSL</application> libraries into
<application>Qt5</application> libraries instead of
<command>dlopen()</command>-ing them.
</para>
<para>
<parameter>-skip qtwebengine</parameter>: This switch disables building
the QtWebEngine. The BLFS editors have chosen to build <xref
linkend="qtwebengine"/> separately.
</para>
<para>
<parameter>-system-harfbuzz</parameter>: This switch enables use
of the system version of <application>Harfbuzz</application>
which fixes some font rendering issues in
<application>Qt5</application> applications but doesn't have all the
features that the included one has.
</para>
</sect2>
<sect2 role="configuration">
<title>Configuring Qt5</title>
<sect3 id="qt5-config">
<title>Configuration Information</title>
<para>
If you installed <application>Qt5</application> in
<filename class="directory">/usr</filename>, create an
environment variable needed by certain packages.
As the <systemitem class="username">root</systemitem> user:
</para>
<screen role="root"><userinput>cat &gt; /etc/profile.d/qt5.sh &lt;&lt; "EOF"
<literal># Begin /etc/profile.d/qt5.sh
QT5DIR=/usr
export QT5DIR
pathappend $QT5DIR/bin
# End /etc/profile.d/qt5.sh</literal>
EOF</userinput></screen>
<para>
If you installed <application>Qt5</application> in a location other
than <filename class="directory">/usr</filename>, you need to update the
following configuration files so that <application>Qt5</application> is
correctly found by other packages and system processes.
</para>
<para>
As the <systemitem class="username">root</systemitem> user, update
the <filename>/etc/ld.so.conf</filename> file and the dynamic linker's
run-time cache file:
</para>
<screen role="root"><userinput>cat &gt;&gt; /etc/ld.so.conf &lt;&lt; EOF
<literal># Begin Qt addition
/opt/qt5/lib
# End Qt addition</literal>
EOF
ldconfig</userinput></screen>
<indexterm zone="qt5 qt5-config">
<primary sortas="e-etc-ld.so.conf">/etc/ld.so.conf</primary>
</indexterm>
<para>
As the <systemitem class="username">root</systemitem> user, create
the <filename>/etc/profile.d/qt5.sh</filename> file:
</para>
<screen role="root"><userinput>cat &gt; /etc/profile.d/qt5.sh &lt;&lt; "EOF"
<literal># Begin /etc/profile.d/qt5.sh
QT5DIR=/opt/qt5
pathappend $QT5DIR/bin PATH
pathappend $QT5DIR/lib/pkgconfig PKG_CONFIG_PATH
export QT5DIR
# End /etc/profile.d/qt5.sh</literal>
EOF</userinput></screen>
</sect3>
</sect2>
<sect2 role="content">
<title>Contents</title>
<segmentedlist>
<segtitle>Installed Programs</segtitle>
<segtitle>Installed Libraries</segtitle>
<segtitle>Installed Directories</segtitle>
<seglistitem>
<seg>
assistant, designer, lconvert, linguist, lrelease,
lupdate, moc, pixeltool, qcollectiongenerator, qdbuscpp2xml,
qdbus, qdbusviewer, qdbusxml2cpp, qdoc, qhelpconverter,
qhelpgenerator, qlalr, qmake, qml1plugindump, qmlbundle, qmleasing,
qmlimportscanner, qmllint, qmlmin, qmlplugindump, qmlprofiler, qml,
qmlscene, qmltestrunner, qmlviewer, qtdiag, qtpaths, rcc,
syncqt.pl, uic, xmlpatterns, and xmlpatternsvalidator
</seg>
<seg>
libEnginio.so, libqgsttools_p.so, libQt5Bluetooth.so,
libQt5Bootstrap.a, libQt5CLucene.so, libQt5Concurrent.so,
libQt5Core.so, libQt5DBus.so, libQt5Declarative.so,
libQt5DesignerComponents.so, libQt5Designer.so, libQt5Gui.so,
libQt5Help.so, libQt5Location.so, libQt5MultimediaQuick_p.so,
libQt5Multimedia.so, libQt5MultimediaWidgets.so, libQt5Network.so,
libQt5Nfc.so, libQt5OpenGLExtensions.a, libQt5OpenGL.so,
libQt5PlatformSupport.a, libQt5Positioning.so, libQt5PrintSupport.so,
libQt5QmlDevTools.a, libQt5Qml.so, libQt5QuickParticles.so,
libQt5Quick.so, libQt5QuickTest.so, libQt5QuickWidgets.so,
libQt5Script.so, libQt5ScriptTools.so, libQt5Sensors.so,
libQt5SerialPort.so, libQt5Sql.so, libQt5Svg.so, libQt5Test.so,
libQt5UiTools.a, libQt5WebChannel.so, libQt5WebEngineCore.so,
libQt5WebEngine.so, libQt5WebEngineWidgets.so, libQt5WebKit.so,
libQt5WebKitWidgets.so, libQt5WebSockets.so, libQt5Widgets.so,
libQt5X11Extras.so, libQt5XmlPatterns.so, libQt5Xml.so, and several
plugins under /opt/qt5/{imports,plugins,qml}
</seg>
<seg>
/usr/include/qt5,
/usr/lib/qt5,
/usr/share/doc/qt5, and
/usr/share/qt5
OR
/opt/qt5 and
/opt/qt-&qt5-version;
</seg>
</seglistitem>
</segmentedlist>
<variablelist>
<bridgehead renderas="sect3">Short Descriptions</bridgehead>
<?dbfo list-presentation="list"?>
<?dbhtml list-presentation="table"?>
<varlistentry id="assistant-qt5">
<term><command>assistant</command></term>
<listitem>
<para>
is a tool for presenting on-line documentation.
</para>
<indexterm zone="qt5 assistant-qt5">
<primary sortas="b-assistant-qt5">assistant</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="designer-qt5">
<term><command>designer</command></term>
<listitem>
<para>
is a full-fledged GUI builder. It includes
powerful features such as preview mode, automatic widget
layout, support for custom widgets, and an advanced
property editor.
</para>
<indexterm zone="qt5 designer-qt5">
<primary sortas="b-designer-qt5">designer</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="lconvert-qt5">
<term><command>lconvert</command></term>
<listitem>
<para>
is part of Qt5's Linguist tool chain. It can be used as a
standalone tool to convert and filter translation data files.
</para>
<indexterm zone="qt5 lconvert-qt5">
<primary sortas="b-lconvert-qt5">lconvert</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="linguist-qt5">
<term><command>linguist</command></term>
<listitem>
<para>
provides support for translating applications into
local languages.
</para>
<indexterm zone="qt5 linguist-qt5">
<primary sortas="b-linguist-qt5">linguist</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="lrelease-qt5">
<term><command>lrelease</command></term>
<listitem>
<para>
is a simple command line tool. It reads a Qt project
file and produces message files used by the application.
</para>
<indexterm zone="qt5 lrelease-qt5">
<primary sortas="b-lrelease-qt5">lrelease</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="lupdate-qt5">
<term><command>lupdate</command></term>
<listitem>
<para>
reads a Qt project file, finds the translatable
strings in the specified source, header and Qt Designer
interface files, and produces or updates the translation
files listed in the project file.
</para>
<indexterm zone="qt5 lupdate-qt5">
<primary sortas="b-lupdate-qt5">lupdate</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="moc-qt5">
<term><command>moc</command></term>
<listitem>
<para>
generates Qt meta object support code.
</para>
<indexterm zone="qt5 moc-qt5">
<primary sortas="b-moc-qt5">moc</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="pixeltool-qt5">
<term><command>pixeltool</command></term>
<listitem>
<para>
is a desktop magnifier and as you move your mouse around
the screen it will show the magnified contents in its window.
</para>
<indexterm zone="qt5 pixeltool-qt5">
<primary sortas="b-pixeltool-qt5">pixeltool</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="qcollectiongenerator-qt5">
<term><command>qcollectiongenerator</command></term>
<listitem>
<para>
is a tool used to create a Qt Help Collection.
</para>
<indexterm zone="qt5 qcollectiongenerator-qt5">
<primary sortas="b-qcollectiongenerator-qt5">qcollectiongenerator</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="qdbuscpp2xml-qt5">
<term><command>qdbuscpp2xml</command></term>
<listitem>
<para>
takes a C++ source file and generates a D-Bus XML definition
of the interface.
</para>
<indexterm zone="qt5 qdbuscpp2xml-qt5">
<primary sortas="b-qdbuscpp2xml-qt5">qdbuscpp2xml</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="qdbus-qt5">
<term><command>qdbus</command></term>
<listitem>
<para>
lists available services, object paths, methods, signals, and
properties of objects on a bus.
</para>
<indexterm zone="qt5 qdbus-qt5">
<primary sortas="b-qdbus-qt5">qdbus</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="qdbusviewer-qt5">
<term><command>qdbusviewer</command></term>
<listitem>
<para>
is a graphical D-Bus browser.
</para>
<indexterm zone="qt5 qdbusviewer-qt5">
<primary sortas="b-qdbusviewer-qt5">qdbusviewer</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="qdbusxml2cpp-qt5">
<term><command>qdbusxml2cpp</command></term>
<listitem>
<para>
is a tool that can be used to parse interface descriptions
and produce static code representing those interfaces,
</para>
<indexterm zone="qt5 qdbusxml2cpp-qt5">
<primary sortas="b-qdbusxml2cpp-qt5">qdbusxml2cpp</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="qdoc-qt5">
<term><command>qdoc</command></term>
<listitem>
<para>
is a tool used by <application>Qt</application> Developers to
generate documentation for software projects.
</para>
<indexterm zone="qt5 qdoc-qt5">
<primary sortas="b-qdoc-qt5">qdoc</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="qhelpconverter-qt5">
<term><command>qhelpconverter</command></term>
<listitem>
<para>
is a tool used to convert files to <application>Qt</application>
help format.
</para>
<indexterm zone="qt5 qhelpconverter-qt5">
<primary sortas="b-qhelpconverter-qt5">qhelpconverter</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="qhelpgenerator-qt5">
<term><command>qhelpgenerator</command></term>
<listitem>
<para>
is a tool used to generate a <application>Qt</application>
compressed help file.
</para>
<indexterm zone="qt5 qhelpgenerator-qt5">
<primary sortas="b-qhelpgenerator-qt5">qhelpgenerator</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="qlalr-qt5">
<term><command>qlalr</command></term>
<listitem>
<para>
is a tool used to generate code from grammar specifications.
</para>
<indexterm zone="qt5 qlalr-qt5">
<primary sortas="b-qlalr-qt5">qlalr</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="qmake-qt5">
<term><command>qmake</command></term>
<listitem>
<para>
uses information stored in project files to
determine what should go in the makefiles it
generates.
</para>
<indexterm zone="qt5 qmake-qt5">
<primary sortas="b-qmake-qt5">qmake</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="qml1plugindump-qt5">
<term><command>qml1plugindump</command></term>
<listitem>
<para>
is a symlink to <application>qtchooser</application>.
</para>
<indexterm zone="qt5 qml1plugindump-qt5">
<primary sortas="b-qml1plugindump-qt5">qml1plugindump</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="qmlbundle-qt5">
<term><command>qmlbundle</command></term>
<listitem>
<para>
is a tool used to manage QML bundle.
</para>
<indexterm zone="qt5 qmlbundle-qt5">
<primary sortas="b-qmlbundle-qt5">qmlbundle</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="qmleasing-qt5">
<term><command>qmleasing</command></term>
<listitem>
<para>
is a tool used to define the easing curves using an
interactive curve editor.
</para>
<indexterm zone="qt5 qmleasing-qt5">
<primary sortas="b-qmleasing-qt5">qmleasing</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="qmlimportscanner-qt5">
<term><command>qmlimportscanner</command></term>
<listitem>
<para>
is a tool used to import QML files from a directory.
</para>
<indexterm zone="qt5 qmlimportscanner-qt5">
<primary sortas="b-qmlimportscanner-qt5">qmlimportscanner</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="qmllint-qt5">
<term><command>qmllint</command></term>
<listitem>
<para>
is a syntax checker for QML files.
</para>
<indexterm zone="qt5 qmllint-qt5">
<primary sortas="b-qmllint-qt5">qmllint</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="qmlmin-qt5">
<term><command>qmlmin</command></term>
<listitem>
<para>
removes comments and layout characters from a QML file.
</para>
<indexterm zone="qt5 qmlmin-qt5">
<primary sortas="b-qmlmin-qt5">qmlmin</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="qmlplugindump-qt5">
<term><command>qmlplugindump</command></term>
<listitem>
<para>
is a tool to create a qmltypes file.
</para>
<indexterm zone="qt5 qmlplugindump-qt5">
<primary sortas="b-qmlplugindump-qt5">qmlplugindump</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="qmlprofiler-qt5">
<term><command>qmlprofiler</command></term>
<listitem>
<para>
is a tool used to analyze QML applications.
</para>
<indexterm zone="qt5 qmlprofiler-qt5">
<primary sortas="b-qmlprofiler-qt5">qmlprofiler</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="qmlscene-qt5">
<term><command>qmlscene</command></term>
<listitem>
<para>
is a utility that loads and displays QML documents even before
the application is complete.
</para>
<indexterm zone="qt5 qmlscene-qt5">
<primary sortas="b-qmlscene-qt5">qmlscene</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="qmltestrunner-qt5">
<term><command>qmltestrunner</command></term>
<listitem>
<para>
is a tool used to make tests.
</para>
<indexterm zone="qt5 qmltestrunner-qt5">
<primary sortas="b-qmltestrunner-qt5">qmltestrunner</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="qmlviewer-qt5">
<term><command>qmlviewer</command></term>
<listitem>
<para>
is a tool for loading QML documents that makes it easy to quickly
develop and debug QML applications.
</para>
<indexterm zone="qt5 qmlviewer-qt5">
<primary sortas="b-qmlviewer-qt5">qmlviewer</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="qtdiag-qt5">
<term><command>qtdiag</command></term>
<listitem>
<para>
is a tool for reporting diagnostic information about Qt and its
environment.
</para>
<indexterm zone="qt5 qtdiag-qt5">
<primary sortas="b-qtdiag-qt5">qtdiag</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="qtpaths-qt5">
<term><command>qtpaths</command></term>
<listitem>
<para>
is a tool to query Qt path information.
</para>
<indexterm zone="qt5 qtpaths-qt5">
<primary sortas="b-qtpaths-qt5">qtpaths</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="rcc-qt5">
<term><command>rcc</command></term>
<listitem>
<para>
is a resource compiler used in conjunction with designer.
</para>
<indexterm zone="qt5 rcc-qt5">
<primary sortas="b-rcc-qt5">rcc</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="syncqt.pl-qt5">
<term><command>syncqt.pl</command></term>
<listitem>
<para>
is a script to create the forwarding headers in the include
directories. It is an internal development tool.
</para>
<indexterm zone="qt5 syncqt.pl-qt5">
<primary sortas="b-syncqt.pl-qt5">syncqt.pl</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="uic-qt5">
<term><command>uic</command></term>
<listitem>
<para>
is a Qt user interface compiler.
</para>
<indexterm zone="qt5 uic-qt5">
<primary sortas="b-uic-qt5">uic</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="xmlpatterns-qt5">
<term><command>xmlpatterns</command></term>
<listitem>
<para>
provides support for XPath, XQuery, XSLT, and XML Schema
validation.
</para>
<indexterm zone="qt5 xmlpatterns-qt5">
<primary sortas="b-xmlpatterns-qt5">xmlpatterns</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="xmlpatternsvalidator-qt5">
<term><command>xmlpatternsvalidator</command></term>
<listitem>
<para>
is a tool used to validate XML documents.
</para>
<indexterm zone="qt5 xmlpatternsvalidator-qt5">
<primary sortas="b-xmlpatternsvalidator-qt5">xmlpatternsvalidator</primary>
</indexterm>
</listitem>
</varlistentry>
</variablelist>
</sect2>
</sect1>