source: x/lib/qt5.xml@ 6c7866b4

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 7.10 7.4 7.5 7.6 7.6-blfs 7.6-systemd 7.7 7.8 7.9 8.0 8.1 8.2 8.3 8.4 9.0 9.1 basic bdubbs/svn elogind gnome kde5-13430 kde5-14269 kde5-14686 kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts krejzi/svn lazarus lxqt nosym perl-modules plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition systemd-11177 systemd-13485 trunk upgradedb xry111/intltool xry111/llvm18 xry111/soup3 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since 6c7866b4 was 6c7866b4, checked in by Krejzi <krejzi@…>, 11 years ago

libmng 2.0.2

git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@11678 af4574ff-66df-0310-9fd7-8a98e5e911e0

  • Property mode set to 100644
File size: 20.1 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.1">
8 <!ENTITY qt5-url "http://download.qt-project.org/official_releases/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 "44a507beebef73eb364b5a2ec7bbe090">
13 <!ENTITY qt5-size "169 MB">
14 <!ENTITY qt5-buildsize "2.5 GB">
15 <!ENTITY qt5-time "50 SBU">
16]>
17
18<sect1 id="qt5" xreflabel="Qt-&qt5-version;">
19 <?dbhtml filename="qt5.html" ?>
20
21 <sect1info>
22 <othername>$LastChangedBy$</othername>
23 <date>$Date$</date>
24 </sect1info>
25
26 <title>Qt-&qt5-version;</title>
27
28 <indexterm zone="qt5">
29 <primary sortas="a-Qt">Qt</primary>
30 </indexterm>
31
32 <sect2 role="package">
33 <title>Introduction to Qt</title>
34
35 <para>
36 <application>Qt</application> is a cross-platform application
37 framework that is widely used for developing application software
38 with a graphical user interface (GUI) (in which cases Qt is classified
39 as a widget toolkit), and also used for developing non-GUI programs such
40 as command-line tools and consoles for servers. One of the major users
41 of <application>Qt</application> is <application>KDE</application>.
42 </para>
43
44 &lfs73_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">Qt Dependencies</bridgehead>
81
82 <bridgehead renderas="sect4">Required</bridgehead>
83 <para role="required">
84 <xref linkend="alsa-lib"/>,
85 <xref linkend="mesalib"/>,
86 <xref linkend="qtchooser"/>,
87 <xref linkend="xcb-util-image"/>,
88 <xref linkend="xcb-util-keysyms"/>,
89 <xref linkend="xcb-util-renderutil"/>, and
90 <xref linkend="xcb-util-wm"/>
91 </para>
92
93 <bridgehead renderas="sect4">Recommended</bridgehead>
94 <para role="recommended">
95 <xref linkend="cacerts"/>,
96 <xref linkend="cups"/>,
97 <xref linkend="dbus"/>,
98 <xref linkend="glib2"/>,
99 <xref linkend="gst-plugins-base"/>,
100 <xref linkend="icu"/>,
101 <xref linkend="libjpeg"/>,
102 <xref linkend="libmng"/>,
103 <xref linkend="libpng"/>,
104 <xref linkend="libtiff"/>,
105 <xref linkend="openssl"/>,
106 <xref linkend="pcre"/>, and
107 <xref linkend="sqlite"/>
108 </para>
109
110 <bridgehead renderas="sect4">Optional</bridgehead>
111 <para role="optional">
112 <xref linkend="gst10-plugins-base"/> (QtWebKit HTML5 Video Support),
113 <xref linkend="gtk2"/> (GTK+ Theme Support),
114 <ulink url="http://xkbcommon.org/">libxkbcommon</ulink>,
115 <xref linkend="mysql"/>,
116 <xref linkend="postgresql"/>,
117 <xref linkend="pulseaudio"/>, and
118 <xref linkend="unixodbc"/>
119 </para>
120
121 <para condition="html" role="usernotes">User Notes:
122 <ulink url="&blfs-wiki;/qt5"/>
123 </para>
124 </sect2>
125
126 <sect2 role="installation">
127 <title>Installation of Qt</title>
128
129 <warning>
130 <para>
131 If you did not install some of the recommended dependencies, examine
132 <command>./configure --help</command> output to check how to disable
133 them or use internal versions bundled in the source tarball.
134 </para>
135 </warning>
136
137 <para>
138 Install <application>Qt</application> by running the
139 following commands:
140 </para>
141
142<screen><userinput>sed -i "s:Context\* context}:&amp;\n%lex-param {YYLEX_PARAM}:" \
143 qtwebkit/Source/ThirdParty/ANGLE/src/compiler/glslang.y &amp;&amp;
144
145sed -i -e "/#if/d" -e "/#error/d" -e "/#endif/d" \
146 qtimageformats/config.tests/libmng/libmng.cpp &amp;&amp;
147
148./configure -prefix /usr \
149 -sysconfdir /etc/xdg \
150 -bindir /usr/lib/qt5/bin \
151 -headerdir /usr/include/qt5 \
152 -archdatadir /usr/lib/qt5 \
153 -datadir /usr/share/qt5 \
154 -docdir /usr/share/doc/qt5 \
155 -translationdir /usr/share/qt5/translations \
156 -examplesdir /usr/share/doc/qt5/examples \
157 -confirm-license \
158 -opensource \
159 -dbus-linked \
160 -openssl-linked \
161 -system-sqlite \
162 -no-nis \
163 -nomake examples \
164 -opengl es2 \
165 -optimized-qmake &amp;&amp;
166make</userinput></screen>
167
168 <para>
169 Remove references to the build directory from pkg-confg
170 files by running the following command:
171 </para>
172
173<screen><userinput>find . -name "*.pc" -exec perl -pi -e "s, -L$PWD/?\S+,,g" {} \;</userinput></screen>
174
175 <para>
176 This package does not come with a test suite.
177 </para>
178
179 <para>
180 Now, as the <systemitem class="username">root</systemitem> user:
181 </para>
182
183<screen role="root"><userinput>make install &amp;&amp;
184install -v -Dm644 qttools/src/assistant/assistant/images/assistant-128.png \
185 /usr/share/pixmaps/assistant-qt5.png &amp;&amp;
186install -v -Dm644 qttools/src/designer/src/designer/images/designer.png \
187 /usr/share/pixmaps/designer-qt5.png &amp;&amp;
188install -v -Dm644 qttools/src/linguist/linguist/images/icons/linguist-128-32.png \
189 /usr/share/pixmaps/linguist-qt5.png &amp;&amp;
190install -v -Dm644 qttools/src/qdbus/qdbusviewer/images/qdbusviewer-128.png \
191 /usr/share/pixmaps/qdbusviewer-qt5.png</userinput></screen>
192
193 <para>
194 Remove references to the build directory from installed files by
195 running the following commands as the
196 <systemitem class="username">root</systemitem> user:
197 </para>
198
199<screen role="root"><userinput>sed -i -e "s:$PWD/qtbase:/usr/lib/qt5:g" \
200 /usr/lib/qt5/mkspecs/modules/qt_lib_bootstrap.pri &amp;&amp;
201find /usr/lib/*.prl -exec sed -i -e \
202 '/^QMAKE_PRL_BUILD_DIR/d;s/\(QMAKE_PRL_LIBS =\).*/\1/' {} \;</userinput></screen>
203
204 <para>
205 Symlink the <application>Qt</application> executables into
206 <filename class="directory">/usr/bin</filename> by running the
207 following commands as the
208 <systemitem class="username">root</systemitem> user:
209 </para>
210
211<screen role="root"><userinput>for file in /usr/lib/qt5/bin/*
212do
213 ln -sfv ../lib/qt5/bin/$(basename $file) /usr/bin/$(basename $file)-qt5
214done</userinput></screen>
215
216 </sect2>
217
218 <sect2 role="installation">
219 <title>Alternate Qt Installation Instructions</title>
220
221 <para>
222 This section provides an alternate way to install Qt by installing
223 almost all of the files in the <filename class="directory">/opt</filename>
224 directory. This allows management of all Qt related files in one unit.
225 For instance, a new version of Qt5 can be installed without over-writing
226 the existing installation and entire Qt5 instances can be easily removed.
227 However, it has the disadvantage of needing some extra configuration.
228 </para>
229
230<screen><userinput>patch -Np1 -i ../qt-&qt5-version;-bison_fixes-1.patch &amp;&amp;
231
232QT5DIR=/opt/qt-&qt5-version;
233
234./configure -prefix $QT5DIR \
235 -sysconfdir /etc/xdg \
236 -confirm-license \
237 -opensource \
238 -dbus-linked \
239 -openssl-linked \
240 -system-sqlite \
241 -plugin-sql-sqlite \
242 -no-nis \
243 -nomake examples \
244 -opengl es2 \
245 -optimized-qmake &amp;&amp;
246make</userinput></screen>
247
248 <para>
249 Now, as the <systemitem class="username">root</systemitem> user:
250 </para>
251
252<screen role="root"><userinput>make install &amp;&amp;
253
254install -v -Dm644 qttools/src/assistant/assistant/images/assistant-128.png \
255 /usr/share/pixmaps/assistant-qt5.png &amp;&amp;
256install -v -Dm644 qttools/src/designer/src/designer/images/designer.png \
257 /usr/share/pixmaps/designer-qt5.png &amp;&amp;
258install -v -Dm644 qttools/src/linguist/linguist/images/icons/linguist-128-32.png \
259 /usr/share/pixmaps/linguist-qt5.png &amp;&amp;
260install -v -Dm644 qttools/src/qdbus/qdbusviewer/images/qdbusviewer-128.png \
261 /usr/share/pixmaps/qdbusviewer-qt5.png</userinput></screen>
262
263 <para>
264 Remove references to the build directory from installed files by
265 running the following commands as the
266 <systemitem class="username">root</systemitem> user:
267 </para>
268
269<screen role="root"><userinput>find $QT5DIR -name qt_lib_bootstrap.pri \
270 -exec sed -i -e "s:$PWD/qtbase:/$QT5DIR/lib/:g" {} \; &amp;&amp;
271
272find $QT5DIR -name \*.prl \
273 -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;</userinput></screen>
274
275 <para>
276 Symlink the <application>Qt</application> executables into
277 <filename class="directory">/usr/bin</filename> by running the
278 following commands as the
279 <systemitem class="username">root</systemitem> user:
280 </para>
281
282<screen role="root"><userinput>ln -svf $QT5DIR /opt/qt5 &amp;&amp;
283
284for file in /opt/qt5/bin/*; do
285 ln -sfv $file /usr/bin/$(basename $file)-qt5
286done</userinput></screen>
287
288 <para>
289 At this point is is useful to add some configuration items as
290 the <systemitem class="username">root</systemitem> user:
291 </para>
292
293<screen role="root"><userinput>echo /opt/qt5 &gt;&gt; /etc/ld.so.conf &amp;&amp;
294ldconfig &amp;&amp;
295
296cat &gt;&gt; /etc/profile.d/qt5.sh &lt;&lt; "EOF"
297pathappend /opt/qt5/lib/pkgconfig PKG_CONFIG_PATH
298EOF</userinput></screen>
299
300 </sect2>
301
302 <sect2 role="commands">
303 <title>Command Explanations</title>
304
305 <para>
306 <command>sed -i "..." ...</command>: First command fixes
307 building with <application>Bison</application> 3.0 and
308 second command fixes detection of
309 <application>libmng</application> 2.0.
310 </para>
311
312 <para>
313 <parameter>-confirm-license</parameter>: Accept license
314 without prompting user during configuration.
315 </para>
316
317 <para>
318 <parameter>-opensource</parameter>: Install the opensource
319 version of <application>Qt</application>.
320 </para>
321
322 <para>
323 <parameter>-release</parameter>: This switch disables
324 building with debugging symbols.
325 </para>
326
327 <para>
328 <parameter>-nomake examples</parameter>: This switch
329 disables building of the example programs included
330 in the source tarball. Remove it if you want to build
331 them.
332 </para>
333
334 <para>
335 <parameter>-system-sqlite</parameter>: This switch enables use
336 of the system version of <application>SQLite</application>.
337 </para>
338
339 <para>
340 <parameter>-no-nis</parameter>: This switch disables support
341 for Network Information Service (NIS) which has been
342 removed from recent versions of <application>Glibc</application>.
343 </para>
344
345 <para>
346 <parameter>-dbus-linkend -openssl-linkend</parameter>: These
347 switches enable explicit linking of the
348 <application>D-Bus</application> and
349 <application>OpenSSL</application> libraries into
350 <application>Qt</application> libraries instead of
351 <command>dlopen()</command>-ing them.
352 </para>
353
354 <para>
355 <parameter>-opengl es2</parameter>: This switch enables OpenGL ES2
356 support in <application>Qt</application>.
357 </para>
358
359 <para>
360 <parameter>-optimized-qmake</parameter>: This switch enables
361 building of the optimized <command>qmake</command> program.
362 </para>
363
364 </sect2>
365
366 <sect2 role="configuration">
367 <title>Configuring Qt</title>
368
369 <sect3 id="qt5-config">
370 <title>Configuration Information</title>
371
372 <para>
373 Create the menu entries for installed applications.
374 As the <systemitem class="username">root</systemitem> user:
375 </para>
376
377<screen role="root"><userinput>install -dm755 /usr/share/applications
378cat &gt; /usr/share/applications/assistant-qt5.desktop &lt;&lt; "EOF"
379<literal>[Desktop Entry]
380Name=Qt5 Assistant
381Comment=Shows Qt5 documentation and examples
382Exec=assistant-qt5
383Icon=assistant-qt5
384Terminal=false
385Encoding=UTF-8
386Type=Application
387Categories=Qt;Development;Documentation;</literal>
388EOF
389cat &gt; /usr/share/applications/designer-qt5.desktop &lt;&lt; "EOF"
390<literal>[Desktop Entry]
391Name=Qt5 Designer
392GenericName=Interface Designer
393Comment=Design GUIs for Qt5 applications
394Exec=designer-qt5
395Icon=designer-qt5
396MimeType=application/x-designer;
397Terminal=false
398Encoding=UTF-8
399Type=Application
400Categories=Qt;Development;</literal>
401EOF
402cat &gt; /usr/share/applications/linguist-qt5.desktop &lt;&lt; "EOF"
403<literal>[Desktop Entry]
404Name=Qt5 Linguist
405Comment=Add translations to Qt5 applications
406Exec=linguist-qt5
407Icon=linguist-qt5
408MimeType=text/vnd.trolltech.linguist;application/x-linguist;
409Terminal=false
410Encoding=UTF-8
411Type=Application
412Categories=Qt;Development;</literal>
413EOF
414cat &gt; /usr/share/applications/qdbusviewer-qt5.desktop &lt;&lt; "EOF"
415<literal>[Desktop Entry]
416Name=Qt5 QDbusViewer
417GenericName=D-Bus Debugger
418Comment=Debug D-Bus applications
419Exec=qdbusviewer-qt5
420Icon=qdbusviewer-qt5
421Terminal=false
422Encoding=UTF-8
423Type=Application
424Categories=Qt;Development;Debugger;</literal>
425EOF</userinput></screen>
426
427 </sect3>
428
429 </sect2>
430
431 <sect2 role="content">
432 <title>Contents</title>
433
434 <segmentedlist>
435 <segtitle>Installed Programs</segtitle>
436 <segtitle>Installed Libraries</segtitle>
437 <segtitle>Installed Directories</segtitle>
438
439 <seglistitem>
440 <seg>
441 assistant-qt5, designer-qt5, lconvert-qt5, linguist-qt5, lrelease-qt5,
442 lupdate-qt5, moc-qt5, pixeltool-qt5, qcollectiongenerator-qt5,
443 qdbuscpp2xml-qt5, qdbus-qt5, qdbusviewer-qt5, qdbusxml2cpp-qt5, qdoc-qt5,
444 qhelpconverter-qt5, qhelpgenerator-qt5, qmake-qt5, qml1plugindump-qt5,
445 qmlbundle-qt5, qmlmin-qt5, qmlplugindump-qt5, qmlprofiler-qt5, qmlscene-qt5,
446 qmltestrunner-qt5, qmlviewer-qt5, rcc-qt5, syncqt.pl-qt5, uic-qt5,
447 xmlpatterns-qt5 and xmlpatternsvalidator-qt5
448 </seg>
449 <seg>
450 libqgsttools_p.so, libQt5Bootstrap.a, libQt5CLucene.so, libQt5Concurrent.so,
451 libQt5Core.so, libQt5DBus.so, libQt5Declarative.so, libQt5DesignerComponents.so,
452 libQt5Designer.so, libQt5Gui.so, libQt5Help.so, libQt5MultimediaQuick_p.so,
453 libQt5Multimedia.so, libQt5MultimediaWidgets.so, libQt5Network.so,
454 libQt5OpenGLExtensions.a, libQt5OpenGL.so, libQt5PlatformSupport.a,
455 libQt5PrintSupport.so, libQt5QmlDevTools.a, libQt5Qml.so, libQt5QuickParticles.so,
456 libQt5Quick.so, libQt5QuickTest.so, libQt5Script.so, libQt5ScriptTools.so,
457 libQt5Sensors.so, libQt5SerialPort.so, libQt5Sql.so, libQt5Svg.so, libQt5Test.so,
458 libQt5UiTools.a, libQt5V8.so, libQt5WebKit.so, libQt5WebKitWidgets.so,
459 libQt5Widgets.so, libQt5X11Extras.so, libQt5XmlPatterns.so and libQt5Xml.so
460 </seg>
461 <seg>
462 /usr/include/qt5,
463 /usr/lib/qt5,
464 /usr/share/doc/qt5 and
465 /usr/share/qt5
466 </seg>
467 </seglistitem>
468 </segmentedlist>
469
470 <variablelist>
471 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
472 <?dbfo list-presentation="list"?>
473 <?dbhtml list-presentation="table"?>
474
475 <varlistentry id="assistant-qt5">
476 <term><command>assistant-qt5</command></term>
477 <listitem>
478 <para>
479 is a tool for presenting on-line documentation.
480 </para>
481 <indexterm zone="qt5 assistant-qt5">
482 <primary sortas="b-assistant-qt5">assistant-qt5</primary>
483 </indexterm>
484 </listitem>
485 </varlistentry>
486
487 <varlistentry id="designer-qt5">
488 <term><command>designer-qt5</command></term>
489 <listitem>
490 <para>
491 is a full-fledged GUI builder. It includes
492 powerful features such as preview mode, automatic widget
493 layout, support for custom widgets, and an advanced
494 property editor.
495 </para>
496 <indexterm zone="qt5 designer-qt5">
497 <primary sortas="b-designer-qt5">designer-qt5</primary>
498 </indexterm>
499 </listitem>
500 </varlistentry>
501
502 <varlistentry id="linguist-qt5">
503 <term><command>linguist-qt5</command></term>
504 <listitem>
505 <para>
506 provides support for translating applications into
507 local languages.
508 </para>
509 <indexterm zone="qt5 linguist-qt5">
510 <primary sortas="b-linguist-qt5">linguist-qt5</primary>
511 </indexterm>
512 </listitem>
513 </varlistentry>
514
515 <varlistentry id="lrelease-qt5">
516 <term><command>lrelease-qt5</command></term>
517 <listitem>
518 <para>
519 is a simple command line tool. It reads a Qt project
520 file and produces message files used by the application.
521 </para>
522 <indexterm zone="qt5 lrelease-qt5">
523 <primary sortas="b-lrelease-qt5">lrelease-qt5</primary>
524 </indexterm>
525 </listitem>
526 </varlistentry>
527
528 <varlistentry id="lupdate-qt5">
529 <term><command>lupdate-qt5</command></term>
530 <listitem>
531 <para>
532 reads a Qt project file, finds the translatable
533 strings in the specified source, header and Qt Designer
534 interface files, and produces or updates the translation
535 files listed in the project file.
536 </para>
537 <indexterm zone="qt5 lupdate-qt5">
538 <primary sortas="b-lupdate-qt5">lupdate-qt5</primary>
539 </indexterm>
540 </listitem>
541 </varlistentry>
542
543 <varlistentry id="moc-qt5">
544 <term><command>moc-qt5</command></term>
545 <listitem>
546 <para>
547 generates Qt meta object support code.
548 </para>
549 <indexterm zone="qt5 moc-qt5">
550 <primary sortas="b-moc-qt5">moc-qt5</primary>
551 </indexterm>
552 </listitem>
553 </varlistentry>
554
555 <varlistentry id="pixeltool-qt5">
556 <term><command>pixeltool-qt5</command></term>
557 <listitem>
558 <para>
559 is a desktop magnifier and as you move your mouse around
560 the screen it will show the magnified contents in its window.
561 </para>
562 <indexterm zone="qt5 pixeltool-qt5">
563 <primary sortas="b-pixeltool-qt5">pixeltool-qt5</primary>
564 </indexterm>
565 </listitem>
566 </varlistentry>
567
568 <varlistentry id="qmake-qt5">
569 <term><command>qmake-qt5</command></term>
570 <listitem>
571 <para>
572 uses information stored in project files to
573 determine what should go in the makefiles it
574 generates.
575 </para>
576 <indexterm zone="qt5 qmake-qt5">
577 <primary sortas="b-qmake-qt5">qmake-qt5</primary>
578 </indexterm>
579 </listitem>
580 </varlistentry>
581
582 <varlistentry id="rcc-qt5">
583 <term><command>rcc-qt5</command></term>
584 <listitem>
585 <para>
586 is a resource compiler used in conjunction with designer.
587 </para>
588 <indexterm zone="qt5 rcc-qt5">
589 <primary sortas="b-rcc-qt5">rcc-qt5</primary>
590 </indexterm>
591 </listitem>
592 </varlistentry>
593
594 <varlistentry id="uic-qt5">
595 <term><command>uic-qt5</command></term>
596 <listitem>
597 <para>
598 is a Qt user interface compiler.
599 </para>
600 <indexterm zone="qt5 uic-qt5">
601 <primary sortas="b-uic-qt5">uic-qt5</primary>
602 </indexterm>
603 </listitem>
604 </varlistentry>
605
606 </variablelist>
607
608 </sect2>
609
610</sect1>
Note: See TracBrowser for help on using the repository browser.