source: x/lib/qt5.xml@ c1325868

trunk
Last change on this file since c1325868 was 5f38a07, checked in by Douglas R. Reno <renodr@…>, 2 months ago

Patch Qt5 against CVE-2024-25580.

  • Property mode set to 100644
File size: 46.5 KB
Line 
1<?xml version="1.0" encoding="UTF-8"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
7 <!ENTITY qt5-major "5.15">
8 <!ENTITY qt5-url "https://download.qt.io/archive/qt/&qt5-major;/&qt5-version;/single">
9
10 <!ENTITY qt5-download-http "&qt5-url;/qt-everywhere-opensource-src-&qt5-version;.tar.xz">
11 <!ENTITY qt5-download-ftp " ">
12 <!ENTITY qt5-md5sum "3fb1cd4f763f5d50d491508b7b99fb77">
13 <!ENTITY qt5-size "630 MB">
14 <!ENTITY qt5-buildsize "15 GB (264 MB installed)">
15 <!ENTITY qt5-time "16 SBU (using parallelism=4)">
16]>
17
18<sect1 id="qt5" xreflabel="Qt-&qt5-version;">
19 <?dbhtml filename="qt5.html" ?>
20
21
22 <title>Qt-&qt5-version;</title>
23
24 <indexterm zone="qt5">
25 <primary sortas="a-Qt5">Qt</primary>
26 </indexterm>
27
28 <sect2 role="package">
29 <title>Introduction to Qt5</title>
30
31 <para>
32 <application>Qt5</application> is a cross-platform application framework
33 that is widely used for developing application software with a graphical
34 user interface (GUI) (in which cases <application>Qt5</application> is
35 classified as a widget toolkit), and also used for developing non-GUI
36 programs such as command-line tools and consoles for servers. Two of the
37 major users of <application>Qt</application> are <application>KDE
38 Frameworks 5 (KF5)</application> and <application>LXQt</application>.
39 </para>
40
41 &lfs121_checked;
42
43 <bridgehead renderas="sect3">Package Information</bridgehead>
44 <itemizedlist spacing="compact">
45 <listitem>
46 <para>
47 Download (HTTP): <ulink url="&qt5-download-http;"/>
48 </para>
49 </listitem>
50 <listitem>
51 <para>
52 Download (FTP): <ulink url="&qt5-download-ftp;"/>
53 </para>
54 </listitem>
55 <listitem>
56 <para>
57 Download MD5 sum: &qt5-md5sum;
58 </para>
59 </listitem>
60 <listitem>
61 <para>
62 Download size: &qt5-size;
63 </para>
64 </listitem>
65 <listitem>
66 <para>
67 Estimated disk space required: &qt5-buildsize;
68 </para>
69 </listitem>
70 <listitem>
71 <para>
72 Estimated build time: &qt5-time;
73 </para>
74 </listitem>
75 </itemizedlist>
76
77 <bridgehead renderas="sect3">Additional Downloads</bridgehead>
78 <itemizedlist spacing="compact">
79 <listitem>
80 <para>
81 Now that <application>Qt5</application> updates are restricted to
82 commercial customers, upstream patches for the various modules are
83 being curated at kde.
84 Patches for the modules required by packages in BLFS have been
85 aggregated for the non-modular Qt5 build we use.
86 </para>
87 <para>
88 Required patch:
89 <ulink url="&patch-root;/qt-everywhere-opensource-src-&qt5-version;-kf5-1.patch"/>
90 </para>
91 <para>
92 Details of the kde curation can be found at
93 <ulink url="https://dot.kde.org/2021/04/06/announcing-kdes-qt-5-patch-collection"/>
94 and <ulink url="https://community.kde.org/Qt5PatchCollection"/>.
95 </para>
96 </listitem>
97 <listitem>
98 <para>
99 Required patch:
100 <ulink url="&patch-root;/qt-everywhere-opensource-src-&qt5-version;-security_fix-1.patch"/>
101 </para>
102 </listitem>
103 </itemizedlist>
104
105 <bridgehead renderas="sect3">Qt5 Dependencies</bridgehead>
106
107 <bridgehead renderas="sect4">Required</bridgehead>
108 <para role="required">
109 <xref linkend="xorg7-lib"/>
110 </para>
111
112 <bridgehead renderas="sect4">Recommended</bridgehead>
113 <para role="recommended">
114 <xref linkend="alsa-lib"/>,
115 <xref linkend="at-spi2-core"/>,
116 <xref linkend="make-ca"/>,
117 <xref linkend="cups"/>,
118 <phrase revision='sysv'><xref linkend="dbus"/>,</phrase>
119 <xref linkend="double-conversion"/>,
120 <xref linkend="glib2"/>,
121 <xref linkend="gst10-plugins-base"/> (QtMultimedia backend),
122 <xref linkend="harfbuzz"/>,
123 <xref linkend="icu"/>,
124 <xref linkend="jasper"/>,
125 <xref linkend="libjpeg"/>,
126 <xref linkend="libmng"/>,
127 <xref linkend="libpng"/>,
128 <xref linkend="libtiff"/>,
129 <xref linkend="libwebp"/>,
130 <xref linkend="libxkbcommon"/>,
131 <xref linkend="mesa"/>,
132 <xref linkend="mtdev"/>,
133 <xref linkend="pcre2"/>,
134 <xref linkend="sqlite"/>,
135 <xref linkend="wayland"/> (<application>Mesa</application>
136 must be built with <application>Wayland</application> EGL
137 backend),
138 <xref linkend="xcb-util-image"/>,
139 <xref linkend="xcb-util-keysyms"/>,
140 <xref linkend="xcb-util-renderutil"/>, and
141 <xref linkend="xcb-util-wm"/>
142 </para>
143
144 <bridgehead renderas="sect4">Optional</bridgehead>
145 <para role="optional">
146 <xref role="runtime" linkend="bluez"/> (for sdpscanner, and at runtime for
147 QtConnectivity module),
148 <xref linkend="gtk3"/>,
149 <xref linkend="ibus"/>,
150 <xref linkend="libinput"/>,
151 <xref linkend="mariadb"/>
152 or <ulink url="https://www.mysql.com/">MySQL</ulink>,
153 <xref linkend="mitkrb"/>,
154 <xref linkend="pciutils"/>,
155 <xref linkend="postgresql"/>,
156 <xref linkend="pulseaudio"/>,
157 <xref linkend="sdl2"/>,
158 <xref linkend="unixodbc"/>,
159 <xref linkend="vulkan-loader"/>,
160 <ulink url="https://www.assimp.org/">assimp</ulink>,
161 <ulink url="https://github.com/festvox/flite">Flite</ulink>,
162 <ulink url="https://www.firebirdsql.org/">Firebird</ulink>,
163 <ulink url="https://www.freetds.org/">FreeTDS</ulink>,
164 <ulink url="https://libproxy.github.io/libproxy/">libproxy</ulink>,
165 <ulink url="https://openal.org/">OpenAL</ulink>,
166 <ulink url="https://freebsoft.org/speechd/">speech-dispatcher</ulink>, and
167 <ulink url="http:///www.tslib.org/">tslib</ulink>
168 </para>
169
170 <!-- Many of the dependencies in the qmake/configure output do not apply
171 to Linux-based platforms. I've selected the ones that do and put
172 them in as optional dependencies. -renodr -->
173 </sect2>
174
175 <sect2 role="qt5-prefix">
176 <title>Setting the installation prefix</title>
177
178 <bridgehead renderas="sect3">Installing in /opt/qt5</bridgehead>
179
180 <para>
181 The BLFS editors recommend installing <application>Qt5</application> in a
182 directory other than <filename class="directory">/usr</filename>, ie
183 <filename class="directory">/opt/qt5</filename>. To do this, set the
184 following environment variable:
185 </para>
186
187<screen><userinput>export QT5PREFIX=/opt/qt5</userinput></screen>
188
189 <tip>
190 <para>
191 Sometimes the installation paths are hardcoded into installed files.
192 This is the reason why <filename class="directory">/opt/qt5</filename>
193 is used as installation prefix instead of <filename
194 class="directory">/opt/qt-&qt5-version;</filename>. To create a
195 versioned <application>Qt5</application> directory,
196 you may create a versioned directory and a symlink:
197 </para>
198
199<screen role="root"><userinput>mkdir -pv /opt/qt-&qt5-version;
200ln -sfnv qt-&qt5-version; /opt/qt5</userinput></screen>
201
202 <para>
203 Later on, you may want to install other versions of
204 <application>Qt5</application>. To do that, just remove the symlink,
205 create the new versioned directory, and recreate the
206 <filename class="directory">/opt/qt5</filename> symlink again before
207 building the new version.
208 Which version of <application>Qt5</application> you
209 use depends only on where the symlink points.
210 </para>
211 </tip>
212
213 <note>
214 <para>
215 If <xref linkend="qca"/> has been installed and you are
216 reinstalling or updating this package, then
217 <application>qca</application> will need to be reinstalled.
218 </para>
219 </note>
220
221 </sect2>
222
223 <sect2 role="installation">
224 <title>Installation of Qt5</title>
225
226 <warning>
227 <para>
228 If <application>Qt5</application> is being reinstalled into the
229 same directory as an existing instance, run the commands done by
230 <systemitem class="username">root</systemitem>, such as
231 <command>make install</command>, from a console or non-Qt5 based
232 window manager. It overwrites <application>Qt5</application>
233 libraries that should not be in use during the install process.
234 </para>
235 </warning>
236
237 <caution>
238 <para>
239 If you did not install some of the recommended dependencies, examine
240 <command>./configure --help</command> output to check how to disable
241 them or use internal versions bundled in the source tarball.
242 </para>
243 </caution>
244
245 <note>
246 <para>
247 The build time and space required for the full
248 <application>Qt5</application> is quite long. The instructions below
249 do not build the tutorials and examples. Removing the
250 <parameter>-nomake</parameter> line will create a complete build.
251 </para>
252 </note>
253
254 <note>
255 <para>
256 The BLFS editors do not recommend installing
257 <application>Qt5</application> into the
258 <filename class="directory">/usr</filename> hierarchy because it
259 becomes difficult to find components and to update to a new version.
260 If you do want to install <application>Qt5</application> in
261 <filename class="directory">/usr</filename>, the directories need to
262 be specified explicitly. In this case, set
263 <envar>QT5PREFIX=/usr</envar> and add the following to the configure
264 arguments below:
265 </para>
266
267<screen role="nodump"><userinput> -archdatadir /usr/lib/qt5 \
268 -bindir /usr/bin \
269 -plugindir /usr/lib/qt5/plugins \
270 -importdir /usr/lib/qt5/imports \
271 -headerdir /usr/include/qt5 \
272 -datadir /usr/share/qt5 \
273 -docdir /usr/share/doc/qt5 \
274 -translationdir /usr/share/qt5/translations \
275 -examplesdir /usr/share/doc/qt5/examples</userinput></screen>
276 </note>
277
278 <para>
279 Now apply a patch to pull in the fixes curated by kde for those
280 modules which are required by packages mentioned in this book:
281 </para>
282
283<screen><userinput remap="pre">patch -Np1 -i ../qt-everywhere-opensource-src-&qt5-version;-kf5-1.patch</userinput></screen>
284
285 <para>
286 The patch is supposed to be used in a git repository. Otherwise some
287 files that should be modified by <command>configure</command> after
288 applying the patch are not touched. Fortunately, it is enough to create a
289 <filename class="directory">.git</filename> directory in the
290 <filename class="directory">qmake</filename> directory where the
291 <command>configure</command> script is run:
292 </para>
293
294 <screen><userinput remap="pre">mkdir -pv qtbase/.git</userinput></screen>
295
296 <para>
297 Add another fix for building with GCC-13:
298 </para>
299
300<screen><userinput>sed -e "/pragma once/a#include &lt;cstdint&gt;" \
301 -i qtlocation/src/3rdparty/mapbox-gl-native/include/mbgl/util/geometry.hpp \
302 qtlocation/src/3rdparty/mapbox-gl-native/include/mbgl/util/string.hpp \
303 qtlocation/src/3rdparty/mapbox-gl-native/src/mbgl/gl/stencil_mode.hpp</userinput></screen>
304
305 <para>
306 Fix a security vulnerability in qtbase:
307 </para>
308
309<screen><userinput>patch -Np1 -i ../qt-everywhere-opensource-src-&qt5-version;-security_fix-1.patch</userinput></screen>
310
311 <para>
312 Install <application>Qt5</application> by running the following commands:
313 </para>
314
315<screen revision="sysv"><userinput>./configure -prefix $QT5PREFIX \
316 -sysconfdir /etc/xdg \
317 -confirm-license \
318 -opensource \
319 -dbus-linked \
320 -openssl-linked \
321 -system-harfbuzz \
322 -system-sqlite \
323 -nomake examples \
324 -no-rpath \
325 -syslog \
326 -skip qtwebengine &amp;&amp;
327make</userinput></screen>
328
329<screen revision="systemd"><userinput>./configure -prefix $QT5PREFIX \
330 -sysconfdir /etc/xdg \
331 -confirm-license \
332 -opensource \
333 -dbus-linked \
334 -openssl-linked \
335 -system-harfbuzz \
336 -system-sqlite \
337 -nomake examples \
338 -no-rpath \
339 -journald \
340 -skip qtwebengine &amp;&amp;
341make</userinput></screen>
342
343 <para>
344 This package does not come with a test suite.
345 </para>
346
347 <para>
348 Now, as the <systemitem class="username">root</systemitem> user:
349 </para>
350
351<screen role="root"><userinput>make install</userinput></screen>
352
353 <!-- EDITORS NOTE: This package uses INSTALL_ROOT= instead of DESTDIR= for
354 installing in a temporary directory. -->
355
356 <para>
357 Remove references to the build directory from installed library
358 dependency (prl) files by running the following
359 command as the <systemitem class="username">root</systemitem> user:
360 </para>
361
362<screen role="root"><userinput>find $QT5PREFIX/ -name \*.prl \
363 -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;</userinput></screen>
364
365 <para>
366 Install images and create the menu entries for installed applications.
367 The <envar>QT5BINDIR</envar> variable is used here to point to the
368 directory for the executable programs. If you have changed the bindir
369 above, <envar>QT5BINDIR</envar> will need to be adjusted below. Be sure
370 that the <envar>QT5BINDIR</envar> variable is defined in root's
371 environment and as the <systemitem class="username">root</systemitem>
372 user:
373 </para>
374
375<screen role="root"><userinput>QT5BINDIR=$QT5PREFIX/bin
376
377install -v -dm755 /usr/share/pixmaps/ &amp;&amp;
378
379install -v -Dm644 qttools/src/assistant/assistant/images/assistant-128.png \
380 /usr/share/pixmaps/assistant-qt5.png &amp;&amp;
381
382install -v -Dm644 qttools/src/designer/src/designer/images/designer.png \
383 /usr/share/pixmaps/designer-qt5.png &amp;&amp;
384
385install -v -Dm644 qttools/src/linguist/linguist/images/icons/linguist-128-32.png \
386 /usr/share/pixmaps/linguist-qt5.png &amp;&amp;
387
388install -v -Dm644 qttools/src/qdbus/qdbusviewer/images/qdbusviewer-128.png \
389 /usr/share/pixmaps/qdbusviewer-qt5.png &amp;&amp;
390
391install -dm755 /usr/share/applications &amp;&amp;
392
393cat &gt; /usr/share/applications/assistant-qt5.desktop &lt;&lt; EOF
394<literal>[Desktop Entry]
395Name=Qt5 Assistant
396Comment=Shows Qt5 documentation and examples
397Exec=$QT5BINDIR/assistant
398Icon=assistant-qt5.png
399Terminal=false
400Encoding=UTF-8
401Type=Application
402Categories=Qt;Development;Documentation;</literal>
403EOF
404
405cat &gt; /usr/share/applications/designer-qt5.desktop &lt;&lt; EOF
406<literal>[Desktop Entry]
407Name=Qt5 Designer
408GenericName=Interface Designer
409Comment=Design GUIs for Qt5 applications
410Exec=$QT5BINDIR/designer
411Icon=designer-qt5.png
412MimeType=application/x-designer;
413Terminal=false
414Encoding=UTF-8
415Type=Application
416Categories=Qt;Development;</literal>
417EOF
418
419cat &gt; /usr/share/applications/linguist-qt5.desktop &lt;&lt; EOF
420<literal>[Desktop Entry]
421Name=Qt5 Linguist
422Comment=Add translations to Qt5 applications
423Exec=$QT5BINDIR/linguist
424Icon=linguist-qt5.png
425MimeType=text/vnd.trolltech.linguist;application/x-linguist;
426Terminal=false
427Encoding=UTF-8
428Type=Application
429Categories=Qt;Development;</literal>
430EOF
431
432cat &gt; /usr/share/applications/qdbusviewer-qt5.desktop &lt;&lt; EOF
433<literal>[Desktop Entry]
434Name=Qt5 QDbusViewer
435GenericName=D-Bus Debugger
436Comment=Debug D-Bus applications
437Exec=$QT5BINDIR/qdbusviewer
438Icon=qdbusviewer-qt5.png
439Terminal=false
440Encoding=UTF-8
441Type=Application
442Categories=Qt;Development;Debugger;</literal>
443EOF</userinput></screen>
444
445 <para>
446 Some packages such as <xref linkend='vlc'/> look for certain
447 executables with a -qt5 suffix. Run the following command as the
448 <systemitem class="username">root</systemitem> user
449 to create the necessary symlinks:
450 </para>
451
452<screen role="root"><userinput>for file in moc uic rcc qmake lconvert lrelease lupdate; do
453 ln -sfvn $QT5BINDIR/$file /usr/bin/$file-qt5
454done</userinput></screen>
455
456 </sect2>
457
458 <sect2 role="commands">
459 <title>Command Explanations</title>
460
461 <para>
462 <parameter>-confirm-license</parameter>: Accept license
463 without prompting user during configuration.
464 </para>
465
466 <para>
467 <parameter>-opensource</parameter>: Install the opensource
468 version of <application>Qt</application>.
469 </para>
470
471 <para>
472 <parameter>-nomake examples</parameter>: This switch
473 disables building of the example programs included
474 in the source tarball. Remove it if you want to build
475 them.
476 </para>
477
478 <para>
479 <parameter>-system-sqlite</parameter>: This switch enables use
480 of the system version of <application>SQLite</application>.
481 </para>
482
483 <para>
484 <parameter>-dbus-linked</parameter>
485 <parameter>-openssl-linked</parameter>: These
486 switches enable explicit linking of the
487 <application>D-Bus</application> and
488 <application>OpenSSL</application> libraries into
489 <application>Qt5</application> libraries instead of
490 <command>dlopen()</command>-ing them.
491 </para>
492
493 <para revision="sysv">
494 <parameter>-syslog</parameter>: This switch allows to send Qt messages
495 to the <command>syslog</command> logging system.
496 </para>
497
498 <para revision="systemd">
499 <parameter>-journald</parameter>: This switch allows to send Qt messages
500 to the <command>journald</command> logging system.
501 </para>
502
503 <para>
504 <parameter>-skip qtwebengine</parameter>: This switch disables building
505 the QtWebEngine. The BLFS editors have chosen to build <xref
506 linkend="qtwebengine"/> separately.
507 </para>
508
509 <para>
510 <parameter>-system-harfbuzz</parameter>: This switch enables use
511 of the system version of <application>Harfbuzz</application>.
512 </para>
513
514 </sect2>
515
516 <sect2 role="configuration">
517 <title>Configuring Qt5</title>
518
519 <sect3 id="qt5-config">
520 <title>Configuration Information</title>
521
522 <para>
523 If <xref linkend="sudo"/> is installed, QT5DIR should be available to
524 the super user as well. Execute the following commands as the
525 <systemitem class="username">root</systemitem> user:
526 </para>
527
528<screen role="root"><userinput>cat &gt; /etc/sudoers.d/qt &lt;&lt; "EOF"
529<literal>Defaults env_keep += QT5DIR</literal>
530EOF</userinput></screen>
531
532 <bridgehead renderas="sect4">If you installed Qt5 in /usr</bridgehead>
533
534 <para>
535 If you installed <application>Qt5</application> in
536 <filename class="directory">/usr</filename>, create an
537 environment variable needed by certain packages.
538 As the <systemitem class="username">root</systemitem> user:
539 </para>
540
541<screen role="nodump"><userinput>cat &gt; /etc/profile.d/qt5.sh &lt;&lt; "EOF"
542<literal># Begin /etc/profile.d/qt5.sh
543
544QT5DIR=/usr
545export QT5DIR
546
547# End /etc/profile.d/qt5.sh</literal>
548EOF</userinput></screen>
549
550 <bridgehead renderas="sect4">If you did not install Qt5 in /usr</bridgehead>
551
552 <para>
553 If you installed <application>Qt5</application> in a location other
554 than <filename class="directory">/usr</filename>, you need to update the
555 following configuration files so that <application>Qt5</application> is
556 correctly found by other packages and system processes.
557 </para>
558
559 <para>
560 As the <systemitem class="username">root</systemitem> user, update
561 the <filename>/etc/ld.so.conf</filename> file and the dynamic linker's
562 run-time cache file:
563 </para>
564
565<screen role="root"><userinput>cat &gt;&gt; /etc/ld.so.conf &lt;&lt; EOF
566<literal># Begin Qt addition
567
568/opt/qt5/lib
569
570# End Qt addition</literal>
571EOF
572
573ldconfig</userinput></screen>
574
575 <indexterm zone="qt5 qt5-config">
576 <primary sortas="e-etc-ld.so.conf">/etc/ld.so.conf</primary>
577 </indexterm>
578
579 <para>
580 As the <systemitem class="username">root</systemitem> user, create
581 the <filename>/etc/profile.d/qt5.sh</filename> file:
582 </para>
583
584<screen role="root"><userinput>cat &gt; /etc/profile.d/qt5.sh &lt;&lt; "EOF"
585<literal># Begin /etc/profile.d/qt5.sh
586
587QT5DIR=/opt/qt5
588
589pathappend $QT5DIR/bin PATH
590pathappend $QT5DIR/lib/pkgconfig PKG_CONFIG_PATH
591
592export QT5DIR
593
594# End /etc/profile.d/qt5.sh</literal>
595EOF</userinput></screen>
596
597 </sect3>
598
599 </sect2>
600
601 <sect2 role="content">
602 <title>Contents</title>
603
604 <segmentedlist>
605 <segtitle>Installed Programs</segtitle>
606 <segtitle>Installed Libraries</segtitle>
607 <segtitle>Installed Directories</segtitle>
608
609 <seglistitem>
610 <seg>
611 assistant, balsam, canbusutil, designer, fixqt4headers.pl, lconvert,
612 linguist, lprodump, lrelease, lrelease-pro, lupdate, lupdate-pro,
613 meshdebug, moc, pixeltool, qcollectiongenerator, qdbus, qdbuscpp2xml,
614 qdbusviewer, qdbusxml2cpp, qdistancefieldgenerator, qdoc, qgltf,
615 qhelpgenerator, qlalr, qmake, qml, qmlcachegen, qmleasing,
616 qmlformat, qmlimportscanner, qmllint, qmlmin, qmlplugindump,
617 qmlpreview, qmlprofiler, qmlscene, qmltestrunner, qmltime,
618 qmltyperegistrar, qscxmlc,
619 qtattributionscanner, qtdiag, qtpaths, qtplugininfo,
620 qtwaylandscanner, qvkgen, rcc, repc, sdpscanner, syncqt.pl, tracegen,
621 uic, xmlpatterns, and xmlpatternsvalidator
622 </seg>
623 <seg>
624 libQt53DAnimation.so, libQt53DCore.so,
625 libQt53DExtras.so, libQt53DInput.so, libQt53DLogic.so,
626 libQt53DQuick.so, libQt53DQuickAnimation.so, libQt53DQuickExtras.so,
627 libQt53DQuickInput.so, libQt53DQuickRender.so,
628 libQt53DQuickScene2D.so, libQt53DRender.so,
629 libQt5AccessibilitySupport.a, libQt5Bluetooth.so, libQt5Bodymovin.so,
630 libQt5Bootstrap.a, libQt5Charts.so, libQt5Concurrent.so,
631 libQt5Core.so, libQt5DataVisualization.so, libQt5DBus.so,
632 libQt5DesignerComponents.so, libQt5Designer.so,
633 libQt5DeviceDiscoverySupport.a, libQt5EdidSupport.a,
634 libQt5EglFSDeviceIntegration.so, libQt5EglFsKmsSupport.so,
635 libQt5EglSupport.a, libQt5EventDispatcherSupport.a, libQt5FbSupport.a,
636 libQt5FontDatabaseSupport.a, libQt5Gamepad.so, libQt5GlxSupport.a,
637 libQt5Gui.so,libQt5Help.so, libQt5InputSupport.a, libQt5KmsSupport.a,
638 libQt5LinuxAccessibilitySupport.a, libQt5Location.so,
639 libQt5Multimedia.so, libQt5MultimediaGstTools.so,
640 libQt5MultimediaQuick.so, libQt5MultimediaWidgets.so,
641 libQt5Network.so, libQt5NetworkAuth.so, libQt5Nfc.so,
642 libQt5OpenGLExtensions.a, libQt5OpenGL.so, libQt5PacketProtocol.a,
643 libQt5PlatformCompositorSupport.a, libQt5Positioning.so,
644 libQt5PositioningQuick.so, libQt5PrintSupport.so,
645 libQt5Purchasing.so, libQt5Qml.so, libQt5QmlDebug.a,
646 libQt5QmlDevTools.a, libQt5QmlModels.so, libQt5QmlWorkerScript.so,
647 libQt5Quick.so, libQt5Quick3D.so, libQt5Quick3DAssetImport.so,
648 libQt5Quick3DRender.so, libQt5Quick3DRuntimeRender.so,
649 libQt5Quick3DUtils.so, libQt5QuickControls2.so,
650 libQt5QuickParticles.so, libQt5QuickShapes.so,
651 libQt5QuickTemplates2.so, libQt5QuickTest.so, libQt5QuickWidgets.so,
652 libQt5RemoteObjects.so, libQt5Script.so, libQt5ScriptTools.so,
653 libQt5Scxml.so, libQt5Sensors.so, libQt5SerialBus.so,
654 libQt5SerialPort.so, libQt5ServiceSupport.a, libQt5Sql.so,
655 libQt5Svg.so, libQt5Test.so, libQt5TextToSpeech.so,
656 libQt5ThemeSupport.a, libQt5UiTools.a, libQt5VirtualKeyboard.so,
657 libQt5VulkanSupport.a, libQt5WaylandClient.so,
658 libQt5WaylandCompositor.so, libQt5WebChannel.so, libQt5WebSockets.so,
659 libQt5WebView.so, libQt5Widgets.so, libQt5X11Extras.so,
660 libQt5XcbQpa.so, libQt5XkbCommonSupport.a, libQt5Xml.so,
661 libQt5XmlPatterns.so,
662 and several plugins under /opt/qt5/{plugins,qml}
663 </seg>
664 <seg>
665 /usr/include/qt5,
666 /usr/lib/qt5,
667 /usr/share/doc/qt5, and
668 /usr/share/qt5
669 OR
670 /opt/qt5 and
671 /opt/qt-&qt5-version;
672 </seg>
673 </seglistitem>
674 </segmentedlist>
675
676 <variablelist id='qt5-descriptions' xreflabel="Qt5 Short Descriptions">
677 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
678 <?dbfo list-presentation="list"?>
679 <?dbhtml list-presentation="table"?>
680
681 <varlistentry id="assistant-qt5">
682 <term><command>assistant</command></term>
683 <listitem>
684 <para>
685 is a tool for presenting on-line documentation
686 </para>
687 <indexterm zone="qt5 assistant-qt5">
688 <primary sortas="b-assistant-qt5">assistant</primary>
689 </indexterm>
690 </listitem>
691 </varlistentry>
692
693 <varlistentry id="balsam">
694 <term><command>balsam</command></term>
695 <listitem>
696 <para>
697 is a tool to convert 3D scenes from various creation tools
698 to QML format, for use by the new QtQuick 3D library
699 </para>
700 <indexterm zone="qt5 balsam">
701 <primary sortas="b-balsam">balsam</primary>
702 </indexterm>
703 </listitem>
704 </varlistentry>
705
706 <varlistentry id="canbusutil">
707 <term><command>canbustil</command></term>
708 <listitem>
709 <para>
710 is a tool to deal with arbitrary CAN bus frames.
711 A Controller Area Network (CAN) is a vehicle bus standard designed
712 to allow microcontrollers and devices to communicate with each other
713 in applications without a host computer
714 </para>
715 <indexterm zone="qt5 canbusutil">
716 <primary sortas="b-canbusutil">canbusutil</primary>
717 </indexterm>
718 </listitem>
719 </varlistentry>
720
721 <varlistentry id="designer-qt5">
722 <term><command>designer</command></term>
723 <listitem>
724 <para>
725 is a full-fledged GUI builder. It includes
726 powerful features such as preview mode, automatic widget
727 layout, support for custom widgets, and an advanced
728 property editor
729 </para>
730 <indexterm zone="qt5 designer-qt5">
731 <primary sortas="b-designer-qt5">designer</primary>
732 </indexterm>
733 </listitem>
734 </varlistentry>
735
736 <varlistentry id="fixqt4headers.pl">
737 <term><command>fixqt4headers.pl</command></term>
738 <listitem>
739 <para>
740 is a script to replace all Qt 4 style includes with Qt 5 includes
741 </para>
742 <indexterm zone="qt5 fixqt4headers.pl">
743 <primary sortas="b-fixqt4headers.pl">fixqt4headers.pl</primary>
744 </indexterm>
745 </listitem>
746 </varlistentry>
747
748 <varlistentry id="lconvert-qt5">
749 <term><command>lconvert</command></term>
750 <listitem>
751 <para>
752 is part of Qt5's Linguist tool chain. It can be used as a
753 standalone tool to convert and filter translation data files
754 </para>
755 <indexterm zone="qt5 lconvert-qt5">
756 <primary sortas="b-lconvert-qt5">lconvert</primary>
757 </indexterm>
758 </listitem>
759 </varlistentry>
760
761 <varlistentry id="linguist-qt5">
762 <term><command>linguist</command></term>
763 <listitem>
764 <para>
765 provides support for translating applications into
766 local languages
767 </para>
768 <indexterm zone="qt5 linguist-qt5">
769 <primary sortas="b-linguist-qt5">linguist</primary>
770 </indexterm>
771 </listitem>
772 </varlistentry>
773
774 <varlistentry id="lrelease-qt5">
775 <term><command>lrelease</command></term>
776 <listitem>
777 <para>
778 is a simple command line tool. It reads XML-based translation
779 file in TS format and produces message files used by the
780 application
781 </para>
782 <indexterm zone="qt5 lrelease-qt5">
783 <primary sortas="b-lrelease-qt5">lrelease</primary>
784 </indexterm>
785 </listitem>
786 </varlistentry>
787
788 <varlistentry id="lrelease-pro">
789 <term><command>lrelease-pro</command></term>
790 <listitem>
791 <para>
792 extracts project information from qmake projects and passes
793 it to lrelease
794 </para>
795 <indexterm zone="qt5 lrelease-pro">
796 <primary sortas="b-lrelease-pro">lrelease-pro</primary>
797 </indexterm>
798 </listitem>
799 </varlistentry>
800
801 <varlistentry id="lupdate-qt5">
802 <term><command>lupdate</command></term>
803 <listitem>
804 <para>
805 finds the translatable
806 strings in the specified source, header and Qt Designer
807 interface files, and stores the extracted messages in
808 translation files to be processed by lrelease
809 </para>
810 <indexterm zone="qt5 lupdate-qt5">
811 <primary sortas="b-lupdate-qt5">lupdate</primary>
812 </indexterm>
813 </listitem>
814 </varlistentry>
815
816 <varlistentry id="lupdate-pro">
817 <term><command>lupdate-pro</command></term>
818 <listitem>
819 <para>
820 reads a Qt project file, an passes the collected information
821 to lupdate
822 </para>
823 <indexterm zone="qt5 lupdate-pro">
824 <primary sortas="b-lupdate-pro">lupdate-pro</primary>
825 </indexterm>
826 </listitem>
827 </varlistentry>
828
829 <varlistentry id="meshdebug">
830 <term><command>meshdebug</command></term>
831 <listitem>
832 <para>
833 displays information about qtquick-3d mesh files
834 </para>
835 <indexterm zone="qt5 meshdebug">
836 <primary sortas="b-meshdebug">meshdebug</primary>
837 </indexterm>
838 </listitem>
839 </varlistentry>
840
841 <varlistentry id="moc-qt5">
842 <term><command>moc</command></term>
843 <listitem>
844 <para>
845 generates Qt meta object support code
846 </para>
847 <indexterm zone="qt5 moc-qt5">
848 <primary sortas="b-moc-qt5">moc</primary>
849 </indexterm>
850 </listitem>
851 </varlistentry>
852
853 <varlistentry id="pixeltool-qt5">
854 <term><command>pixeltool</command></term>
855 <listitem>
856 <para>
857 is a desktop magnifier and as you move your mouse around
858 the screen it will show the magnified contents in its window
859 </para>
860 <indexterm zone="qt5 pixeltool-qt5">
861 <primary sortas="b-pixeltool-qt5">pixeltool</primary>
862 </indexterm>
863 </listitem>
864 </varlistentry>
865
866 <varlistentry id="qcollectiongenerator-qt5">
867 <term><command>qcollectiongenerator</command></term>
868 <listitem>
869 <para>
870 processes and converts Qt help files
871 </para>
872 <indexterm zone="qt5 qcollectiongenerator-qt5">
873 <primary sortas="b-qcollectiongenerator-qt5">qcollectiongenerator-qt5</primary>
874 </indexterm>
875 </listitem>
876 </varlistentry>
877
878 <varlistentry id="qdbuscpp2xml-qt5">
879 <term><command>qdbuscpp2xml</command></term>
880 <listitem>
881 <para>
882 takes a C++ source file and generates a D-Bus XML definition
883 of the interface
884 </para>
885 <indexterm zone="qt5 qdbuscpp2xml-qt5">
886 <primary sortas="b-qdbuscpp2xml-qt5">qdbuscpp2xml</primary>
887 </indexterm>
888 </listitem>
889 </varlistentry>
890
891 <varlistentry id="qdbus-qt5">
892 <term><command>qdbus</command></term>
893 <listitem>
894 <para>
895 lists available services, object paths, methods, signals, and
896 properties of objects on a bus
897 </para>
898 <indexterm zone="qt5 qdbus-qt5">
899 <primary sortas="b-qdbus-qt5">qdbus</primary>
900 </indexterm>
901 </listitem>
902 </varlistentry>
903
904 <varlistentry id="qdbusviewer-qt5">
905 <term><command>qdbusviewer</command></term>
906 <listitem>
907 <para>
908 is a graphical D-Bus browser
909 </para>
910 <indexterm zone="qt5 qdbusviewer-qt5">
911 <primary sortas="b-qdbusviewer-qt5">qdbusviewer</primary>
912 </indexterm>
913 </listitem>
914 </varlistentry>
915
916 <varlistentry id="qdbusxml2cpp-qt5">
917 <term><command>qdbusxml2cpp</command></term>
918 <listitem>
919 <para>
920 is a tool that can be used to parse interface descriptions
921 and produce static code representing those interfaces,
922 </para>
923 <indexterm zone="qt5 qdbusxml2cpp-qt5">
924 <primary sortas="b-qdbusxml2cpp-qt5">qdbusxml2cpp</primary>
925 </indexterm>
926 </listitem>
927 </varlistentry>
928
929 <varlistentry id="qdistancefieldgenerator-qt5">
930 <term><command>qdistancefieldgenerator</command></term>
931 <listitem>
932 <para>
933 allows a font cache to be pregenerated for Text.QtRendering to speed
934 up an application's startup if the user interface has a lot of text,
935 or multiple fonts, or a large amount of distinct characters, e.g. in
936 CJK writing systems
937 </para>
938 <indexterm zone="qt5 qdistancefieldgenerator-qt5">
939 <primary sortas="b-qdistancefieldgenerator-qt5">qdistancefieldgenerator</primary>
940 </indexterm>
941 </listitem>
942 </varlistentry>
943
944 <varlistentry id="qdoc-qt5">
945 <term><command>qdoc</command></term>
946 <listitem>
947 <para>
948 is a tool used by <application>Qt</application> Developers to
949 generate documentation for software projects
950 </para>
951 <indexterm zone="qt5 qdoc-qt5">
952 <primary sortas="b-qdoc-qt5">qdoc</primary>
953 </indexterm>
954 </listitem>
955 </varlistentry>
956
957 <varlistentry id="qgltf">
958 <term><command>qgltf</command></term>
959 <listitem>
960 <para>
961 imports a variety of 3D model formats and exports into fast-to-load,
962 optimized glTF assets embedded into Qt resource files
963 </para>
964 <indexterm zone="qt5 qgltf">
965 <primary sortas="b-qgltf">qgltf</primary>
966 </indexterm>
967 </listitem>
968 </varlistentry>
969
970 <varlistentry id="qhelpgenerator-qt5">
971 <term><command>qhelpgenerator</command></term>
972 <listitem>
973 <para>
974 is a tool used to generate a <application>Qt</application>
975 compressed help file
976 </para>
977 <indexterm zone="qt5 qhelpgenerator-qt5">
978 <primary sortas="b-qhelpgenerator-qt5">qhelpgenerator</primary>
979 </indexterm>
980 </listitem>
981 </varlistentry>
982
983 <varlistentry id="qlalr-qt5">
984 <term><command>qlalr</command></term>
985 <listitem>
986 <para>
987 is a tool used to generate code from grammar specifications
988 </para>
989 <indexterm zone="qt5 qlalr-qt5">
990 <primary sortas="b-qlalr-qt5">qlalr</primary>
991 </indexterm>
992 </listitem>
993 </varlistentry>
994
995 <varlistentry id="qmake-qt5">
996 <term><command>qmake</command></term>
997 <listitem>
998 <para>
999 uses information stored in project files to
1000 determine what should go in the makefiles it
1001 generates
1002 </para>
1003 <indexterm zone="qt5 qmake-qt5">
1004 <primary sortas="b-qmake-qt5">qmake</primary>
1005 </indexterm>
1006 </listitem>
1007 </varlistentry>
1008
1009 <varlistentry id="qml">
1010 <term><command>qml</command></term>
1011 <listitem>
1012 <para>
1013 executes a QML file
1014 </para>
1015 <indexterm zone="qt5 qml">
1016 <primary sortas="b-qml">qml</primary>
1017 </indexterm>
1018 </listitem>
1019 </varlistentry>
1020
1021 <varlistentry id="qmlcachegen">
1022 <term><command>qmlcachegen</command></term>
1023 <listitem>
1024 <para>
1025 supports the creation of cache files at build time
1026 </para>
1027 <indexterm zone="qt5 qmlcachegen">
1028 <primary sortas="b-qmlcachegen">qmlcachegen</primary>
1029 </indexterm>
1030 </listitem>
1031 </varlistentry>
1032
1033 <varlistentry id="qmleasing-qt5">
1034 <term><command>qmleasing</command></term>
1035 <listitem>
1036 <para>
1037 is a tool used to define the easing curves using an
1038 interactive curve editor
1039 </para>
1040 <indexterm zone="qt5 qmleasing-qt5">
1041 <primary sortas="b-qmleasing-qt5">qmleasing</primary>
1042 </indexterm>
1043 </listitem>
1044 </varlistentry>
1045
1046 <varlistentry id="qmlformat-qt5">
1047 <term><command>qmlformat</command></term>
1048 <listitem>
1049 <para>
1050 formats QML files according to the QML coding conventions
1051 </para>
1052 <indexterm zone="qt5 qmlformat-qt5">
1053 <primary sortas="b-qmlformat-qt5">qmlformat</primary>
1054 </indexterm>
1055 </listitem>
1056 </varlistentry>
1057
1058 <varlistentry id="qmlimportscanner-qt5">
1059 <term><command>qmlimportscanner</command></term>
1060 <listitem>
1061 <para>
1062 is a tool used to import QML files from a directory
1063 </para>
1064 <indexterm zone="qt5 qmlimportscanner-qt5">
1065 <primary sortas="b-qmlimportscanner-qt5">qmlimportscanner</primary>
1066 </indexterm>
1067 </listitem>
1068 </varlistentry>
1069
1070 <varlistentry id="qmllint-qt5">
1071 <term><command>qmllint</command></term>
1072 <listitem>
1073 <para>
1074 is a syntax checker for QML files
1075 </para>
1076 <indexterm zone="qt5 qmllint-qt5">
1077 <primary sortas="b-qmllint-qt5">qmllint</primary>
1078 </indexterm>
1079 </listitem>
1080 </varlistentry>
1081
1082 <varlistentry id="qmlmin-qt5">
1083 <term><command>qmlmin</command></term>
1084 <listitem>
1085 <para>
1086 removes comments and layout characters from a QML file
1087 </para>
1088 <indexterm zone="qt5 qmlmin-qt5">
1089 <primary sortas="b-qmlmin-qt5">qmlmin</primary>
1090 </indexterm>
1091 </listitem>
1092 </varlistentry>
1093
1094 <varlistentry id="qmlplugindump-qt5">
1095 <term><command>qmlplugindump</command></term>
1096 <listitem>
1097 <para>
1098 is a tool to create a qmltypes file
1099 </para>
1100 <indexterm zone="qt5 qmlplugindump-qt5">
1101 <primary sortas="b-qmlplugindump-qt5">qmlplugindump</primary>
1102 </indexterm>
1103 </listitem>
1104 </varlistentry>
1105
1106 <varlistentry id="qmlpreview-qt5">
1107 <term><command>qmlpreview</command></term>
1108 <listitem>
1109 <para>
1110 is a tool used to analyze QML applications
1111 </para>
1112 <indexterm zone="qt5 qmlpreview-qt5">
1113 <primary sortas="b-qmlpreviewr-qt5">qmlpreview</primary>
1114 </indexterm>
1115 </listitem>
1116 </varlistentry>
1117
1118 <varlistentry id="qmlprofiler-qt5">
1119 <term><command>qmlprofiler</command></term>
1120 <listitem>
1121 <para>
1122 is a tool which watches QML and JavaScript files on disk and
1123 updates the application live with any changes
1124 </para>
1125 <indexterm zone="qt5 qmlprofiler-qt5">
1126 <primary sortas="b-qmlprofiler-qt5">qmlprofiler</primary>
1127 </indexterm>
1128 </listitem>
1129 </varlistentry>
1130
1131 <varlistentry id="qmlscene-qt5">
1132 <term><command>qmlscene</command></term>
1133 <listitem>
1134 <para>
1135 is a utility that loads and displays QML documents even before
1136 the application is complete
1137 </para>
1138 <indexterm zone="qt5 qmlscene-qt5">
1139 <primary sortas="b-qmlscene-qt5">qmlscene</primary>
1140 </indexterm>
1141 </listitem>
1142 </varlistentry>
1143
1144 <varlistentry id="qmltestrunner-qt5">
1145 <term><command>qmltestrunner</command></term>
1146 <listitem>
1147 <para>
1148 is a tool used to make tests
1149 </para>
1150 <indexterm zone="qt5 qmltestrunner-qt5">
1151 <primary sortas="b-qmltestrunner-qt5">qmltestrunner</primary>
1152 </indexterm>
1153 </listitem>
1154 </varlistentry>
1155
1156 <varlistentry id="qscxmlc-qt5">
1157 <term><command>qscxml</command></term>
1158 <listitem>
1159 <para>
1160 converts an input.scxml file to a header and cpp file
1161 </para>
1162 <indexterm zone="qt5 qscxmlc-qt5">
1163 <primary sortas="b-qscxmlc-qt5">qscxmlc</primary>
1164 </indexterm>
1165 </listitem>
1166 </varlistentry>
1167
1168 <varlistentry id="qtattributionsscanner-qt5">
1169 <term><command>qtattributionsscanner</command></term>
1170 <listitem>
1171 <para>
1172 processes qt_attribution.json files in Qt sources
1173 </para>
1174 <indexterm zone="qt5 qtattributionsscanner-qt5">
1175 <primary sortas="b-qtattributionsscanner-qt5">qtattributionsscanner</primary>
1176 </indexterm>
1177 </listitem>
1178 </varlistentry>
1179
1180 <varlistentry id="qtdiag-qt5">
1181 <term><command>qtdiag</command></term>
1182 <listitem>
1183 <para>
1184 is a tool for reporting diagnostic information about Qt and its
1185 environment
1186 </para>
1187 <indexterm zone="qt5 qtdiag-qt5">
1188 <primary sortas="b-qtdiag-qt5">qtdiag</primary>
1189 </indexterm>
1190 </listitem>
1191 </varlistentry>
1192
1193 <varlistentry id="qtpaths-qt5">
1194 <term><command>qtpaths</command></term>
1195 <listitem>
1196 <para>
1197 is a tool to query Qt path information
1198 </para>
1199 <indexterm zone="qt5 qtpaths-qt5">
1200 <primary sortas="b-qtpaths-qt5">qtpaths</primary>
1201 </indexterm>
1202 </listitem>
1203 </varlistentry>
1204
1205 <varlistentry id="qtplugininfo">
1206 <term><command>qtplugininfo</command></term>
1207 <listitem>
1208 <para>
1209 dumps meta-data about Qt plugins in JSON format
1210 </para>
1211 <indexterm zone="qt5 qtplugininfo">
1212 <primary sortas="b-qtplugininfo">qtplugininfo</primary>
1213 </indexterm>
1214 </listitem>
1215 </varlistentry>
1216
1217 <varlistentry id="qtwaylandscanner">
1218 <term><command>qtwaylandscanner</command></term>
1219 <listitem>
1220 <para>
1221 converts Wayland specfiles to C++ headers and code needed for
1222 QtWayland
1223 </para>
1224 <indexterm zone="qt5 qtwaylandscanner">
1225 <primary sortas="b-qtwaylandscanner">qtwaylandscanner</primary>
1226 </indexterm>
1227 </listitem>
1228 </varlistentry>
1229
1230 <varlistentry id="qvkgen">
1231 <term><command>qvkgen</command></term>
1232 <listitem>
1233 <para>
1234 converts Vulkan specfiles to C++ headers and code
1235 </para>
1236 <indexterm zone="qt5 qvkgen">
1237 <primary sortas="b-qvkgen">qvkgen</primary>
1238 </indexterm>
1239 </listitem>
1240 </varlistentry>
1241
1242 <varlistentry id="rcc-qt5">
1243 <term><command>rcc</command></term>
1244 <listitem>
1245 <para>
1246 is a resource compiler used in conjunction with designer
1247 </para>
1248 <indexterm zone="qt5 rcc-qt5">
1249 <primary sortas="b-rcc-qt5">rcc</primary>
1250 </indexterm>
1251 </listitem>
1252 </varlistentry>
1253
1254 <varlistentry id="repc">
1255 <term><command>repc</command></term>
1256 <listitem>
1257 <para>
1258 is the Replica Compiler, which generates QObject header files based
1259 on an API definition file
1260 </para>
1261 <indexterm zone="qt5 repc">
1262 <primary sortas="b-repc">repc</primary>
1263 </indexterm>
1264 </listitem>
1265 </varlistentry>
1266
1267 <varlistentry id="sdpscanner-qt5">
1268 <term><command>sdpscanner</command></term>
1269 <listitem>
1270 <para>
1271 performs a Session Description Protocol scan on a remote device,
1272 using the SDP server represented by the local Bluetooth device
1273 </para>
1274 <indexterm zone="qt5 sdpscanner-qt5">
1275 <primary sortas="b-sdpscanner-qt5">sdpscanner</primary>
1276 </indexterm>
1277 </listitem>
1278 </varlistentry>
1279
1280 <varlistentry id="syncqt.pl-qt5">
1281 <term><command>syncqt.pl</command></term>
1282 <listitem>
1283 <para>
1284 is a script to create the forwarding headers in the include
1285 directories. It is an internal development tool
1286 </para>
1287 <indexterm zone="qt5 syncqt.pl-qt5">
1288 <primary sortas="b-syncqt.pl-qt5">syncqt.pl</primary>
1289 </indexterm>
1290 </listitem>
1291 </varlistentry>
1292
1293 <varlistentry id="tracegen">
1294 <term><command>tracegen</command></term>
1295 <listitem>
1296 <para>
1297 is a trace generator for LTTng or ETW
1298 </para>
1299 <indexterm zone="qt5 tracegen">
1300 <primary sortas="b-tracegen">tracegen</primary>
1301 </indexterm>
1302 </listitem>
1303 </varlistentry>
1304
1305 <varlistentry id="uic-qt5">
1306 <term><command>uic</command></term>
1307 <listitem>
1308 <para>
1309 is a Qt user interface compiler
1310 </para>
1311 <indexterm zone="qt5 uic-qt5">
1312 <primary sortas="b-uic-qt5">uic</primary>
1313 </indexterm>
1314 </listitem>
1315 </varlistentry>
1316
1317 <varlistentry id="xmlpatterns-qt5">
1318 <term><command>xmlpatterns</command></term>
1319 <listitem>
1320 <para>
1321 provides support for XPath, XQuery, XSLT, and XML Schema
1322 validation
1323 </para>
1324 <indexterm zone="qt5 xmlpatterns-qt5">
1325 <primary sortas="b-xmlpatterns-qt5">xmlpatterns</primary>
1326 </indexterm>
1327 </listitem>
1328 </varlistentry>
1329
1330 <varlistentry id="xmlpatternsvalidator-qt5">
1331 <term><command>xmlpatternsvalidator</command></term>
1332 <listitem>
1333 <para>
1334 is a tool used to validate XML documents
1335 </para>
1336 <indexterm zone="qt5 xmlpatternsvalidator-qt5">
1337 <primary sortas="b-xmlpatternsvalidator-qt5">xmlpatternsvalidator</primary>
1338 </indexterm>
1339 </listitem>
1340 </varlistentry>
1341
1342 </variablelist>
1343
1344 </sect2>
1345
1346</sect1>
Note: See TracBrowser for help on using the repository browser.