source: x/lib/qt4.xml@ 7498751

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 7498751 was 1066772, checked in by Ragnar Thomsen <rthomsen@…>, 12 years ago

Replace pine by re-alpine. Qt corrections.

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

  • Property mode set to 100644
File size: 18.3 KB
RevLine 
[a8e9d06]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
[5fe62531]7 <!ENTITY qt4-download-http "http://get.qt.nokia.com/qt/source/qt-everywhere-opensource-src-&qt4-version;.tar.gz">
[ea0d62a]8 <!ENTITY qt4-download-ftp "ftp://ftp.trolltech.com/qt/source/qt-everywhere-opensource-src-&qt4-version;.tar.gz">
[14c0f145]9 <!ENTITY qt4-md5sum "7960ba8e18ca31f0c6e4895a312f92ff">
[00785d8]10 <!ENTITY qt4-size "228 MB">
11 <!ENTITY qt4-buildsize "1.8 GB (full), 619 (essential)">
12 <!ENTITY qt4-time "69 SBU (full), 54 SBU (essential)">
[a8e9d06]13]>
14
15<sect1 id="qt4" xreflabel="Qt-&qt4-version;">
16 <?dbhtml filename="qt4.html" ?>
17
18 <sect1info>
[61d5269]19 <othername>$LastChangedBy$</othername>
20 <date>$Date$</date>
[a8e9d06]21 </sect1info>
22
23 <title>Qt-&qt4-version;</title>
24
25 <indexterm zone="qt4">
26 <primary sortas="a-qt4">Qt4</primary>
27 </indexterm>
28
29 <sect2 role="package">
[ad41452]30 <title>Introduction to Qt</title>
[a8e9d06]31
[14c0f145]32 <para><application>Qt</application> is a cross-platform application
33 framework that is widely used for developing application software
34 with a graphical user interface (GUI) (in which cases Qt is classified
35 as a widget toolkit), and also used for developing non-GUI programs such
36 as command-line tools and consoles for servers. One of the major users
[ad41452]37 of <application>Qt</application> is <application>KDE</application>.</para>
[a8e9d06]38
[14c0f145]39 &lfs71_checked;
40
[a8e9d06]41 <bridgehead renderas="sect3">Package Information</bridgehead>
42 <itemizedlist spacing="compact">
43 <listitem>
44 <para>Download (HTTP): <ulink url="&qt4-download-http;"/></para>
45 </listitem>
46 <listitem>
47 <para>Download (FTP): <ulink url="&qt4-download-ftp;"/></para>
48 </listitem>
49 <listitem>
50 <para>Download MD5 sum: &qt4-md5sum;</para>
51 </listitem>
52 <listitem>
53 <para>Download size: &qt4-size;</para>
54 </listitem>
55 <listitem>
56 <para>Estimated disk space required: &qt4-buildsize;</para>
57 </listitem>
58 <listitem>
59 <para>Estimated build time: &qt4-time;</para>
60 </listitem>
61 </itemizedlist>
62
[14c0f145]63
64 <bridgehead renderas="sect3">Additional Downloads</bridgehead>
65 <itemizedlist spacing="compact">
66 <listitem>
67 <para>GCC 4.7 patch: <ulink
68 url="&patch-root;/qt-everywhere-opensource-src-&qt4-version;-gcc_fix-1.patch"/>
69 </para>
70 </listitem>
71 <listitem>
72 <para>GLib 2.32 patch: <ulink
73 url="&patch-root;/qt-everywhere-opensource-src-&qt4-version;-glib_fix-1.patch"/>
74 </para>
75 </listitem>
76 </itemizedlist>
77
78
[a8e9d06]79 <bridgehead renderas="sect3">Qt Dependencies</bridgehead>
80
81 <bridgehead renderas="sect4">Required</bridgehead>
82 <para role="required"><xref linkend="x-window-system"/></para>
83
84 <bridgehead renderas="sect4">Recommended</bridgehead>
[e40b79b6]85 <para role="recommended">
86 <xref linkend="dbus"/>,
87 <xref linkend="libjpeg"/>,
[a8e9d06]88 <xref linkend="libmng"/>,
[b495000]89 <xref linkend="libtiff"/>,
[e40b79b6]90 <xref linkend="libpng"/> and
91 <xref linkend="pkgconfig"/> (needed to use D-Bus, GLib, GTK and PulseAudio)
[a8e9d06]92 </para>
93
94 <bridgehead renderas="sect4">Optional</bridgehead>
[6122386]95 <para role="optional">
[e2e42c7]96 <!--<xref linkend="nas"/>,-->
[1b665fb]97 <xref linkend="gst-plugins-base"/>,
[e2e42c7]98 <xref linkend='pulseaudio'/>,
[ea0d62a]99 <xref linkend="gtk2"/>,
[a8e9d06]100 <xref linkend="openssl"/>,
101 <xref linkend="cups"/>,
102 <xref linkend="mysql"/>,
103 <xref linkend="postgresql"/>,
[14c0f145]104 <xref linkend="unixodbc"/> and
[8f9c757e]105 <xref linkend="sqlite"/>
[a8e9d06]106 </para>
107
108 <para condition="html" role="usernotes">User Notes:
[61d5269]109 <ulink url="&blfs-wiki;/qt4"/></para>
[a8e9d06]110
111 </sect2>
112
113 <sect2 role="installation">
[ad41452]114 <title>Installation of Qt</title>
[a8e9d06]115
116 <para>There are several ways to install a complicated package such as
[ad41452]117 <application>Qt</application>. The files are not completely position
[a8e9d06]118 independent. Installation procedures execute the program
119 <command>pkg-config</command> to determine the location of package
120 executables, libraries, headers, and other files. For
[ad41452]121 <application>Qt</application>, <command>pkg-config</command> will look
[61d5269]122 for the appropriate <filename>lib/pkgconfig/Qt*.pc</filename> files which
123 must be modified if relocating the package. These files are set up correctly
124 by the build process.</para>
[a8e9d06]125
126 <para>The default installation places the files in
127 <filename class='directory'>/usr/local/qt/</filename>. Many commercial
128 distributions place the files in the system's
129 <filename class='directory'>/usr</filename> hierarchy. The package can
130 also be installed in an arbitrary directory.</para>
131
[1066772]132 <para>The advantage of installing in
133 <filename class='directory'>/usr</filename> is that no updates to the
[a8e9d06]134 <filename>/etc/ld.so.conf</filename> or
135 <filename>/etc/man_db.conf</filename> files are required. The package
136 files are distributed within several subdirectories of the
137 <filename class='directory'>/usr</filename> hierarchy.
138 This is the method that most commercial distributions use.</para>
[ad41452]139
[1b665fb]140 <caution>
[ad41452]141 <para>If <application>Qt</application> is being reinstalled and the
[61d5269]142 <filename class='directory'>/usr</filename>
[a8e9d06]143 directory is used as the prefix, run the following commands from a
[ad41452]144 console or non-Qt based window manager. It overwrites
145 <application>Qt</application> libraries that should not be in use during
[a8e9d06]146 the install process.</para>
[1b665fb]147 </caution>
[a8e9d06]148
149 <note>
150 <para>The build time and space required for the full
[ad41452]151 <application>Qt</application> is quite long. The instructions below do
[410e228b]152 not build the tutorials and examples. Removing the
[61d5269]153 <parameter>-nomake</parameter> lines will create a complete build.</para>
[a8e9d06]154 </note>
155
[ad41452]156 <para>The method recommended by the <application>Qt</application>
[a8e9d06]157 developers does not use the /usr directory prefix. It has the advantage of
158 keeping all the package files consolidated in a dedicated directory
159 hierarchy. By using this method, an update can be made without overwriting
160 a previous installation and users can easily revert to a previous version
161 by changing one symbolic link.</para>
162
[ad41452]163 <para>The <application>Qt</application> developers use a default location
[61d5269]164 of <filename class='directory'>/usr/local/qt/</filename>, however the
165 procedure below puts the files in <filename
[a8e9d06]166 class='directory'>/opt/qt-&qt4-version;/</filename>
167 and then creates a symbolic link to <filename>/opt/qt/</filename>.</para>
[14c0f145]168
[ad41452]169 <para>Configure <application>Qt</application> by running the
[61d5269]170 following commands:</para>
[a8e9d06]171
[14c0f145]172<screen><userinput>patch -Np1 -i ../qt-everywhere-opensource-src-&qt4-version;-gcc_fix-1.patch &amp;&amp;
173patch -Np1 -i ../qt-everywhere-opensource-src-&qt4-version;-glib_fix-1.patch &amp;&amp;
[1464543]174sed -i '/-Werror/d' src/3rdparty/webkit/Source/WebKit.pri &amp;&amp;
[14c0f145]175./configure -prefix /opt/qt-&qt4-version; \
176 -release \
177 -nomake examples \
178 -nomake demos \
179 -system-sqlite \
180 -no-nis \
181 -opensource \
[1464543]182 -confirm-license &amp;&amp;
183make</userinput></screen>
[14c0f145]184
[47969a6]185 <note><title>Phonon</title>
[1066772]186 <para>If <application>KDE</application> is intended to be installed, add
[47969a6]187 <option>-no-phonon</option> to the <command>./configure</command> command
[1066772]188 above. While installing <application>KDE</application>, a separate version of the
[47969a6]189 <application>Phonon</application> libraries will be installed which better
[1066772]190 matches the needs of the <application>KDE</application> desktop.</para></note>
[1464543]191
[a8e9d06]192 <para>This package does not come with a test suite.</para>
193
194 <para>Now, as the <systemitem class="username">root</systemitem>
195 user:</para>
196
197<screen role="root"><userinput>make install</userinput></screen>
198
[ad41452]199 <para>If you installed <application>Qt</application> in the /opt directory,
[61d5269]200 again as the <systemitem class="username">root</systemitem> user issue:</para>
[a8e9d06]201
[1464543]202<screen role="root"><userinput>ln -svfn qt-&qt4-version; /opt/qt</userinput></screen>
[a8e9d06]203
204 </sect2>
205
206 <sect2 role="commands">
207 <title>Command Explanations</title>
208
[14c0f145]209 <para><command>patch -Np1 -i qt-everywhere-...</command>:
210 The two patches fix compiling with <application>GCC</application>
211 4.7 and <application>GLib</application> 2.32.</para>
212
[1464543]213 <para><command>sed -i '/-Werror/d'...</command>:
[565bc55]214 This sed prevents some compiler warnings being treated as errors when
215 compiling with <application>GCC</application> 4.7. You can omit it if
216 you are compiling with older <application>GCC</application> versions.
217 </para>
[1464543]218
219 <para><parameter>-release</parameter>:
220 This switch disables building with debugging symbols.</para>
221
[410e228b]222 <para><parameter>-nomake examples, -nomake demos</parameter>:
[a8e9d06]223 These switches disable building programs that are only of interest
[ad41452]224 to a <application>Qt</application> developer.</para>
[1464543]225
226 <para><parameter>-system-sqlite</parameter>:
227 Use the system version of <application>SQLite</application>.</para>
228
229 <para><parameter>-no-nis</parameter>:
230 Disable support for Network Information Service (NIS).</para>
231
232 <para><parameter>-opensource</parameter>:
233 Install the opensource version of <application>Qt</application>.</para>
234
235 <para><parameter>-confirm-license</parameter>:
236 Accept license without prompting user during configuration.</para>
[a8e9d06]237
[410e228b]238 <para><parameter>-plugin-sql-<replaceable>&lt;driver&gt;</replaceable></parameter>
[a8e9d06]239 or <parameter>-qt-sql-<replaceable>&lt;driver&gt;</replaceable></parameter>:
[ad41452]240 These switches build SQL support into the <application>Qt</application>
[a8e9d06]241 libraries.</para>
242
243 <note>
[b1a1d93e]244 <para>To check if <application>mysql</application> is autodetected
[a8e9d06]245 properly, examine the output of <command>./configure -qt-sql-mysql
246 -help</command>. Other database support will require similar
247 <command>configure</command> parameters.</para>
248 </note>
[1464543]249
250 <para>There are several optional directories that can be specified in the
251 <command>./configure</command> line. These include
252 <option>-bindir</option>, <option>-libdir</option>,
253 <option>-docdir</option>, and <option>-headerdir</option>. For a complete
254 list, run <command>./configure -help</command>.</para>
[a8e9d06]255
256 </sect2>
257
258 <sect2 role="configuration">
[ad41452]259 <title>Configuring Qt</title>
[a8e9d06]260
261 <sect3 id='qt4-config'>
262 <title>Configuration Information</title>
263
[ad41452]264 <para>If you installed <application>Qt</application> in a location other
[a8e9d06]265 than /usr, you also need to update the following configuration files so
[ad41452]266 that <application>Qt</application> is correctly found by other packages
[a8e9d06]267 and system processes.</para>
268
[1b665fb]269 <para>As the <systemitem class="username">root</systemitem> user, update
270 the <filename>/etc/ld.so.conf</filename> file and the dynamic linker's
271 run-time cache file:</para>
[a8e9d06]272
273<screen role="root"><userinput>cat &gt;&gt; /etc/ld.so.conf &lt;&lt; "EOF" &amp;&amp;
[ad41452]274<literal># Begin Qt addition
[a8e9d06]275
276/opt/qt/lib
277
[ad41452]278# End Qt addition</literal>
[a8e9d06]279EOF
[1b665fb]280ldconfig</userinput></screen>
[a8e9d06]281
[fe48aa6]282 <indexterm zone="qt4 qt4-config">
[a8e9d06]283 <primary sortas="e-etc-ld.so.conf">/etc/ld.so.conf</primary>
284 </indexterm>
285
[8d86c672]286 <para>As the <systemitem class="username">root</systemitem> user, create
[ad41452]287 the <filename>/etc/profile.d/qt.sh</filename> file:</para>
[a8e9d06]288
[ad41452]289<screen role="root"><userinput>cat &gt; /etc/profile.d/qt.sh &lt;&lt; "EOF"
290# Begin /etc/profile.d/qt.sh
[a8e9d06]291
[8d86c672]292QTDIR=/opt/qt
[a8e9d06]293
[8d86c672]294pathappend /opt/qt/bin PATH
295pathappend /opt/qt/lib/pkgconfig PKG_CONFIG_PATH
296
[ad41452]297export QTDIR
[8d86c672]298
[ad41452]299# End /etc/profile.d/qt.sh
[8d86c672]300EOF</userinput></screen>
301
[a8e9d06]302 </sect3>
303 </sect2>
304
305 <sect2 role="content">
306 <title>Contents</title>
307
308 <segmentedlist>
309 <segtitle>Installed Programs</segtitle>
310 <segtitle>Installed Libraries</segtitle>
311 <segtitle>Installed Directories</segtitle>
312
313 <seglistitem>
[1b665fb]314 <seg>assistant, assistant_adp, designer, lconvert, linguist, lrelease,
315 lupdate, moc, pixeltool, qcollectiongenerator, qdbus, qdbuscpp2xml,
316 qdbusviewer, qdbusxml2cpp, qhelpconverter, qhelpgenerator,qmake,
[1066772]317 qt3to4, qtconfig, qtdemo, rcc, uic, uic3 and xmlpatterns</seg>
[1b665fb]318
319 <seg>libphonon.so, libQt3Support.so, libQtAssistantClient.so,
320 libQtCLucene.so, libQtCore.so, libQtDesigner.so, libQtDBus.so,
321 libQtDesignerComponents.so, libQtGui.so, libQtHelp.so, libQtNetwork.so,
322 libQtOpenGL.so, libQtScript.so, libQtScriptTools.so, libQtSql.so,
323 libQtSvg.so, libQtTest.so, libQtUiTools.a, libQtWebKit.so, libQtXml.so,
[1066772]324 libQtXmlPatterns.so and numerous plugin modules installed in
[1b665fb]325 <filename class='directory'>/opt/qt/plugins</filename></seg>
[fd7e0ed6]326
[a8e9d06]327 <seg>/opt/qt-&qt4-version;</seg>
328 </seglistitem>
329 </segmentedlist>
330
331 <variablelist>
332 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
333 <?dbfo list-presentation="list"?>
334 <?dbhtml list-presentation="table"?>
335
336 <varlistentry id="qt4-assistant">
337 <term><command>assistant</command></term>
338 <listitem>
339 <para>is a tool for presenting on-line documentation.</para>
340 <indexterm zone="qt4 qt4-assistant">
341 <primary sortas="b-assistant">assistant</primary>
342 </indexterm>
343 </listitem>
344 </varlistentry>
345
346 <varlistentry id="qt4-designer">
347 <term><command>designer</command></term>
348 <listitem>
349 <para>is a full-fledged GUI builder. It includes
350 powerful features such as preview mode, automatic widget
351 layout, support for custom widgets, and an advanced
352 property editor.</para>
353 <indexterm zone="qt4 qt4-designer">
354 <primary sortas="b-designer">designer</primary>
355 </indexterm>
356 </listitem>
357 </varlistentry>
358
359 <varlistentry id="qt4-linguist">
360 <term><command>linguist</command></term>
361 <listitem>
362 <para>provides support for translating applications into
[61d5269]363 local languages.</para>
[a8e9d06]364 <indexterm zone="qt4 qt4-linguist">
365 <primary sortas="b-linguist">linguist</primary>
366 </indexterm>
367 </listitem>
368 </varlistentry>
369
370 <varlistentry id="qt4-lrelease">
371 <term><command>lrelease</command></term>
372 <listitem>
373 <para>is a simple command line tool. It reads a Qt project
374 file and produces message files used by the application.</para>
375 <indexterm zone="qt4 qt4-lrelease">
376 <primary sortas="b-lrelease">lrelease</primary>
377 </indexterm>
378 </listitem>
379 </varlistentry>
380
381 <varlistentry id="qt4-lupdate">
382 <term><command>lupdate</command></term>
383 <listitem>
384 <para>reads a Qt project file, finds the translatable
385 strings in the specified source, header and Qt Designer
386 interface files, and produces or updates the translation
387 files listed in the project file.</para>
388 <indexterm zone="qt4 qt4-lupdate">
389 <primary sortas="b-lupdate">lupdate</primary>
390 </indexterm>
391 </listitem>
392 </varlistentry>
393
394 <varlistentry id="qt4-moc">
395 <term><command>moc</command></term>
396 <listitem>
397 <para>generates Qt meta object support code.</para>
398 <indexterm zone="qt4 qt4-moc">
399 <primary sortas="b-moc">moc</primary>
400 </indexterm>
401 </listitem>
402 </varlistentry>
403
404 <varlistentry id="qt4-pixeltool">
405 <term><command>pixeltool</command></term>
406 <listitem>
[410e228b]407 <para>is a desktop magnifier and as you move your mouse around
[a8e9d06]408 the screen it will show the magnified contents in its window.</para>
409 <indexterm zone="qt4 qt4-pixeltool">
410 <primary sortas="b-pixeltool">pixeltool</primary>
411 </indexterm>
412 </listitem>
413 </varlistentry>
414
415 <varlistentry id="qt4-qmake">
416 <term><command>qmake</command></term>
417 <listitem>
418 <para>qmake uses information stored in project files to
419 determine what should go in the makefiles it generates.</para>
420 <indexterm zone="qt4 qt4-qmake">
421 <primary sortas="b-qmake">qmake</primary>
422 </indexterm>
423 </listitem>
424 </varlistentry>
425
426 <varlistentry id="qt4-qt3to4">
427 <term><command>qt3to4</command></term>
428 <listitem>
[61d5269]429 <para>qt3to4 is a tool to help update Qt3 code to Qt4.</para>
[a8e9d06]430 <indexterm zone="qt4 qt4-qt3to4">
431 <primary sortas="b-qt3to4">qt3to4</primary>
432 </indexterm>
433 </listitem>
434 </varlistentry>
435
436 <varlistentry id="qt4-qtconfig">
437 <term><command>qtconfig</command></term>
438 <listitem>
439 <para>is used to customize the appearance of Qt applications.</para>
440 <indexterm zone="qt4 qt4-qtconfig">
441 <primary sortas="b-qtconfig">qtconfig</primary>
442 </indexterm>
443 </listitem>
444 </varlistentry>
445
446 <varlistentry id="qt4-qtdemo">
447 <term><command>qtdemo</command></term>
448 <listitem>
[410e228b]449 <para>is a portal into various demonstrations of Qt
[a8e9d06]450 applications.</para>
451 <indexterm zone="qt4 qt4-qtdemo">
452 <primary sortas="b-qtdemo">qtdemo</primary>
453 </indexterm>
454 </listitem>
455 </varlistentry>
456
457 <varlistentry id="qt4-rcc">
458 <term><command>rcc</command></term>
459 <listitem>
[1066772]460 <para>is a resource compiler used in conjunction with designer.</para>
[a8e9d06]461 <indexterm zone="qt4 qt4-rcc">
462 <primary sortas="b-rcc">rcc</primary>
463 </indexterm>
464 </listitem>
465 </varlistentry>
466
467 <varlistentry id="qt4-uic">
468 <term><command>uic</command></term>
469 <listitem>
470 <para>is a Qt user interface compiler.</para>
471 <indexterm zone="qt4 qt4-uic">
472 <primary sortas="b-uic">uic</primary>
473 </indexterm>
474 </listitem>
475 </varlistentry>
476
477 <varlistentry id="qt4-uic3">
478 <term><command>uic3</command></term>
479 <listitem>
[410e228b]480 <para>is a tool to generate Qt4 code out of
481 user interface files generated by the Qt3
[61d5269]482 version of <command>designer</command>.</para>
[a8e9d06]483 <indexterm zone="qt4 qt4-uic3">
484 <primary sortas="b-uic3">uic3</primary>
485 </indexterm>
486 </listitem>
487 </varlistentry>
488
489 </variablelist>
490
491 </sect2>
492
493</sect1>
Note: See TracBrowser for help on using the repository browser.