source: x/lib/qt5.xml@ 4d0615f1

11.0 11.1 11.2 11.3 12.0 12.1 kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts lazarus lxqt plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition trunk upgradedb xry111/intltool xry111/llvm18 xry111/soup3 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since 4d0615f1 was 4d0615f1, checked in by Ken Moffat <ken@…>, 3 years ago

Patch a security vulnerability in QtSVG.

I remeasured Qt to accound for gcc-11.1.0.

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