[7af92fe5] | 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 |
|
---|
[1de3dce9] | 7 | <!ENTITY qt4-download-http
|
---|
[a6c6923] | 8 | "http://download.qt-project.org/official_releases/qt/4.8/&qt4-version;/qt-everywhere-opensource-src-&qt4-version;.tar.gz">
|
---|
[7af92fe5] | 9 | <!ENTITY qt4-download-ftp " ">
|
---|
[5a54d3e] | 10 | <!ENTITY qt4-md5sum "2edbe4d6c2eff33ef91732602f3518eb">
|
---|
[1de3dce9] | 11 | <!ENTITY qt4-size "231 MB">
|
---|
[18310d86] | 12 | <!ENTITY qt4-buildsize "2.0 GB">
|
---|
| 13 | <!ENTITY qt4-time "37 SBU">
|
---|
[7af92fe5] | 14 | ]>
|
---|
| 15 |
|
---|
| 16 | <sect1 id="qt4" xreflabel="Qt-&qt4-version;">
|
---|
| 17 | <?dbhtml filename="qt4.html" ?>
|
---|
| 18 |
|
---|
| 19 | <sect1info>
|
---|
| 20 | <othername>$LastChangedBy$</othername>
|
---|
| 21 | <date>$Date$</date>
|
---|
| 22 | </sect1info>
|
---|
| 23 |
|
---|
| 24 | <title>Qt-&qt4-version;</title>
|
---|
| 25 |
|
---|
| 26 | <indexterm zone="qt4">
|
---|
| 27 | <primary sortas="a-Qt">Qt</primary>
|
---|
| 28 | </indexterm>
|
---|
| 29 |
|
---|
| 30 | <sect2 role="package">
|
---|
[c65ac49d] | 31 | <title>Introduction to Qt4</title>
|
---|
[7af92fe5] | 32 |
|
---|
| 33 | <para>
|
---|
[c65ac49d] | 34 | <application>Qt4</application> is a cross-platform application
|
---|
[7af92fe5] | 35 | framework that is widely used for developing application software
|
---|
[c65ac49d] | 36 | with a graphical user interface (GUI) (in which cases
|
---|
| 37 | <application>Qt4</application> is classifiedas a widget toolkit), and
|
---|
| 38 | also used for developing non-GUI programs such as command-line tools
|
---|
| 39 | and consoles for servers. One of the major users
|
---|
| 40 | of <application>Qt4</application> is <application>KDE</application>.
|
---|
[7af92fe5] | 41 | </para>
|
---|
| 42 |
|
---|
[1c4f3b1f] | 43 | &lfs75_checked;
|
---|
[7af92fe5] | 44 |
|
---|
| 45 | <bridgehead renderas="sect3">Package Information</bridgehead>
|
---|
| 46 | <itemizedlist spacing="compact">
|
---|
| 47 | <listitem>
|
---|
| 48 | <para>
|
---|
| 49 | Download (HTTP): <ulink url="&qt4-download-http;"/>
|
---|
| 50 | </para>
|
---|
| 51 | </listitem>
|
---|
| 52 | <listitem>
|
---|
| 53 | <para>
|
---|
| 54 | Download (FTP): <ulink url="&qt4-download-ftp;"/>
|
---|
| 55 | </para>
|
---|
| 56 | </listitem>
|
---|
| 57 | <listitem>
|
---|
| 58 | <para>
|
---|
| 59 | Download MD5 sum: &qt4-md5sum;
|
---|
| 60 | </para>
|
---|
| 61 | </listitem>
|
---|
| 62 | <listitem>
|
---|
| 63 | <para>
|
---|
| 64 | Download size: &qt4-size;
|
---|
| 65 | </para>
|
---|
| 66 | </listitem>
|
---|
| 67 | <listitem>
|
---|
| 68 | <para>
|
---|
| 69 | Estimated disk space required: &qt4-buildsize;
|
---|
| 70 | </para>
|
---|
| 71 | </listitem>
|
---|
| 72 | <listitem>
|
---|
| 73 | <para>
|
---|
| 74 | Estimated build time: &qt4-time;
|
---|
| 75 | </para>
|
---|
| 76 | </listitem>
|
---|
| 77 | </itemizedlist>
|
---|
| 78 |
|
---|
[c65ac49d] | 79 | <bridgehead renderas="sect3">Qt4 Dependencies</bridgehead>
|
---|
[7af92fe5] | 80 |
|
---|
| 81 | <bridgehead renderas="sect4">Required</bridgehead>
|
---|
| 82 | <para role="required">
|
---|
[e4a1f8a9] | 83 | <xref linkend="xorg7-lib"/>
|
---|
[7af92fe5] | 84 | </para>
|
---|
| 85 |
|
---|
| 86 | <bridgehead renderas="sect4">Recommended</bridgehead>
|
---|
| 87 | <para role="recommended">
|
---|
[e4a1f8a9] | 88 | <xref linkend="alsa-lib"/>,
|
---|
| 89 | <xref linkend="mesalib"/>,
|
---|
[7af92fe5] | 90 | <xref linkend="cacerts"/>,
|
---|
[54666831] | 91 | <xref linkend="dbus"/>,
|
---|
[7af92fe5] | 92 | <xref linkend="glib2"/>,
|
---|
| 93 | <xref linkend="icu"/> (unicode support),
|
---|
| 94 | <xref linkend="libjpeg"/>,
|
---|
| 95 | <xref linkend="libmng"/>,
|
---|
| 96 | <xref linkend="libpng"/>,
|
---|
| 97 | <xref linkend="libtiff"/>,
|
---|
[a8ece039] | 98 | <xref linkend="openssl"/>, and
|
---|
[7af92fe5] | 99 | <xref linkend="sqlite"/>
|
---|
| 100 | </para>
|
---|
| 101 |
|
---|
| 102 | <bridgehead renderas="sect4">Optional</bridgehead>
|
---|
| 103 | <para role="optional">
|
---|
| 104 | <xref linkend="cups"/>,
|
---|
| 105 | <xref linkend="gtk2"/> (GTK+ 2 theme support),
|
---|
| 106 | <xref linkend="gst-plugins-base"/> (For QtWebKit HTML5 Video),
|
---|
[5e0662d] | 107 | <xref linkend="mariadb"/> or <ulink url="http://www.mysql.com/">MySQL</ulink>,
|
---|
[7af92fe5] | 108 | <xref linkend="postgresql"/>,
|
---|
[ec7940be] | 109 | <xref linkend="pulseaudio"/>, and
|
---|
| 110 | <xref linkend="unixodbc"/>
|
---|
[7af92fe5] | 111 | </para>
|
---|
| 112 |
|
---|
[c65ac49d] | 113 | <bridgehead renderas="sect4">Runtime Dependency</bridgehead>
|
---|
| 114 | <para role="optional">
|
---|
| 115 | <xref linkend="qtchooser"/> (required if installing both
|
---|
| 116 | Qt4 and Qt5)
|
---|
| 117 | </para>
|
---|
| 118 |
|
---|
[7af92fe5] | 119 | <para condition="html" role="usernotes">User Notes:
|
---|
| 120 | <ulink url="&blfs-wiki;/qt4"/>
|
---|
| 121 | </para>
|
---|
| 122 | </sect2>
|
---|
| 123 |
|
---|
[c65ac49d] | 124 |
|
---|
| 125 | <sect2 role="qt4-prefix">
|
---|
| 126 | <title>Setting the installation prefix</title>
|
---|
| 127 |
|
---|
| 128 | <bridgehead renderas="sect3">Installing in /usr</bridgehead>
|
---|
| 129 |
|
---|
| 130 | <para>
|
---|
| 131 | If you want to install <application>Qt4</application>
|
---|
| 132 | in <filename class="directory">/usr</filename>, set the
|
---|
| 133 | following environment variable:
|
---|
| 134 | </para>
|
---|
| 135 |
|
---|
| 136 | <screen><userinput>export QT4PREFIX=/usr</userinput></screen>
|
---|
| 137 |
|
---|
| 138 | <para>
|
---|
| 139 | The advantage of installing in
|
---|
| 140 | <filename class="directory">/usr</filename> is that no additional
|
---|
| 141 | configuration is required. The package files are distributed
|
---|
| 142 | within several subdirectories of the
|
---|
| 143 | <filename class="directory">/usr</filename> hierarchy. This is
|
---|
| 144 | the method that most distributions use. The disadvantage for BLFS
|
---|
| 145 | users is that this <application>Qt4</application> instance cannot
|
---|
| 146 | be upgraded while it is in use. It also does not allow reverting
|
---|
| 147 | to an existing, known working instance of
|
---|
| 148 | <application>Qt4</application>.
|
---|
| 149 | </para>
|
---|
| 150 |
|
---|
| 151 | <bridgehead renderas="sect3">Installing in /opt/qt4</bridgehead>
|
---|
| 152 |
|
---|
| 153 | <para>
|
---|
| 154 | If you want to install <application>Qt4</application>
|
---|
| 155 | in a directory other than <filename
|
---|
| 156 | class="directory">/usr</filename>, ie
|
---|
| 157 | <filename class="directory">/opt/qt4</filename>, set
|
---|
| 158 | the following environment variable:
|
---|
| 159 | </para>
|
---|
| 160 |
|
---|
| 161 | <screen><userinput>export QT4PREFIX=/opt/qt4</userinput></screen>
|
---|
| 162 |
|
---|
| 163 | <para>
|
---|
| 164 | The advantage of installing <application>Qt4</application> in a
|
---|
| 165 | custom directory such as <filename
|
---|
| 166 | class="directory">/opt/qt4</filename> is that it keeps all the
|
---|
| 167 | package files consolidated in a dedicated directory hierarchy. By
|
---|
| 168 | using this method, an update can be made without overwriting a
|
---|
| 169 | previous installation and users can easily revert to a previous
|
---|
| 170 | version by changing one symbolic link or merely changing the
|
---|
| 171 | PATH variable.
|
---|
| 172 | </para>
|
---|
| 173 |
|
---|
[d94c58f4] | 174 | <tip>
|
---|
| 175 | <para>
|
---|
| 176 | Sometimes, the installation paths are hardcoded into installed files.
|
---|
| 177 | This is the reason why <filename class="directory">/opt/qt4</filename>
|
---|
| 178 | is used as installation prefix instead of <filename
|
---|
| 179 | class="directory">/opt/qt-&qt4-version;</filename>. After installing
|
---|
| 180 | <application>Qt4</application>, you may rename the directory and
|
---|
| 181 | create a symlink:
|
---|
| 182 | </para>
|
---|
| 183 |
|
---|
| 184 | <screen role="root"><userinput>mv /opt/qt{4,-&qt4-version;}
|
---|
| 185 | ln -sfv qt-&qt4-version; /opt/qt4</userinput></screen>
|
---|
| 186 |
|
---|
| 187 | <para>
|
---|
| 188 | Later on, you may want to install other versions of
|
---|
| 189 | <application>Qt4</application>. To do that, just remove the symlink
|
---|
| 190 | and use <filename class="directory">/opt/qt4</filename> as the
|
---|
| 191 | prefix again. Which version of <application>Qt4</application> you
|
---|
| 192 | use depends only on where the symlink points to.
|
---|
| 193 | </para>
|
---|
| 194 | </tip>
|
---|
| 195 |
|
---|
[c65ac49d] | 196 | </sect2>
|
---|
| 197 |
|
---|
| 198 | <sect2 role="qt4-multi-install">
|
---|
| 199 | <title>Dealing with multiple Qt versions</title>
|
---|
| 200 |
|
---|
| 201 | <para>
|
---|
| 202 | Both <application>Qt4</application> and
|
---|
| 203 | <application>Qt5</application> executables have
|
---|
| 204 | the same names and will overwrite each other if
|
---|
| 205 | they are installed in the same prefix. To overcome
|
---|
| 206 | such problem, BLFS offers <xref linkend="qtchooser"/>,
|
---|
| 207 | an utility used to switch between different
|
---|
| 208 | <application>Qt</application> versions.
|
---|
| 209 | </para>
|
---|
| 210 |
|
---|
| 211 | <para>
|
---|
| 212 | If <xref linkend="qtchooser"/> is to be used or
|
---|
| 213 | if installing both <application>Qt4</application>
|
---|
| 214 | and <application>Qt5</application> in
|
---|
| 215 | <filename class="directory">/usr</filename>, the
|
---|
| 216 | executables need to be installed to a non-standard
|
---|
| 217 | location in order to avoid the conflict with
|
---|
| 218 | <application>Qt5</application> ones. To accomplish
|
---|
| 219 | that, set the following environment variable:
|
---|
| 220 | </para>
|
---|
| 221 |
|
---|
| 222 | <screen><userinput>export QT4BINDIR=$QT4PREFIX/lib/qt4/bin</userinput></screen>
|
---|
| 223 |
|
---|
| 224 | <para>
|
---|
| 225 | If you choose not to install <xref linkend="qtchooser"/>
|
---|
| 226 | or if you are not going to install
|
---|
| 227 | <application>Qt5</application>, simply set the bindir to
|
---|
| 228 | a <filename class="directory">bin</filename> subdir of the
|
---|
| 229 | default prefix by setting the following environment variable:
|
---|
| 230 | </para>
|
---|
| 231 |
|
---|
| 232 | <screen><userinput>export QT4BINDIR=$QT4PREFIX/bin</userinput></screen>
|
---|
| 233 |
|
---|
| 234 | </sect2>
|
---|
[ec7940be] | 235 |
|
---|
[7af92fe5] | 236 | <sect2 role="installation">
|
---|
[c65ac49d] | 237 | <title>Installation of Qt4</title>
|
---|
[7af92fe5] | 238 |
|
---|
[fb28b3b] | 239 | <caution>
|
---|
[8d4b121] | 240 | <para>
|
---|
| 241 | If you did not install some of the recommended dependencies, examine
|
---|
| 242 | <command>./configure --help</command> output to check how to disable
|
---|
| 243 | them or use internal versions bundled in the source tarball.
|
---|
| 244 | </para>
|
---|
[fb28b3b] | 245 | </caution>
|
---|
[8d4b121] | 246 |
|
---|
[fb28b3b] | 247 | <warning>
|
---|
[7af92fe5] | 248 | <para>
|
---|
[fb28b3b] | 249 | If <application>Qt4</application> is being reinstalled into the
|
---|
[9f193fc] | 250 | same directory as an existing instance, run the commands done by
|
---|
[775fbafd] | 251 | <systemitem class="username">root</systemitem>, such as
|
---|
| 252 | <command>make install</command>, from a console or non-Qt4 based
|
---|
[9f193fc] | 253 | window manager. It overwrites <application>Qt4</application>
|
---|
| 254 | libraries that should not be in use during the install process.
|
---|
[7af92fe5] | 255 | </para>
|
---|
[fb28b3b] | 256 | </warning>
|
---|
[7af92fe5] | 257 |
|
---|
| 258 | <note>
|
---|
| 259 | <para>
|
---|
| 260 | The build time and space required for the full
|
---|
| 261 | <application>Qt</application> is quite long. The instructions below
|
---|
| 262 | do not build the tutorials and examples. Removing the
|
---|
| 263 | <parameter>-nomake</parameter> lines will create a complete build.
|
---|
| 264 | </para>
|
---|
| 265 | </note>
|
---|
| 266 |
|
---|
[adf64fa0] | 267 | <para>
|
---|
| 268 | Fix DoS vulnerability in the GIF image handler:
|
---|
| 269 | </para>
|
---|
| 270 |
|
---|
| 271 | <screen><userinput>sed -i -e '631a if (image->isNull()) { state = Error; return -1; }' \
|
---|
| 272 | src/gui/image/qgifhandler.cpp</userinput></screen>
|
---|
| 273 |
|
---|
[7af92fe5] | 274 | <para>
|
---|
[c65ac49d] | 275 | Install <application>Qt4</application> by running the
|
---|
| 276 | following commands:
|
---|
[7af92fe5] | 277 | </para>
|
---|
| 278 |
|
---|
[c65ac49d] | 279 | <screen><userinput>sed -i -e "/#if/d" -e "/#error/d" -e "/#endif/d" \
|
---|
[a6c6923] | 280 | config.tests/unix/libmng/libmng.cpp &&
|
---|
[ec7940be] | 281 |
|
---|
[57242ab] | 282 | sed -i '/CONFIG -/ a\isEmpty(OUTPUT_DIR): OUTPUT_DIR = ../..' \
|
---|
| 283 | src/3rdparty/webkit/Source/WebKit2/DerivedSources.pro &&
|
---|
[a6c6923] | 284 |
|
---|
[c65ac49d] | 285 | ./configure -prefix $QT4PREFIX \
|
---|
| 286 | -sysconfdir /etc/xdg \
|
---|
| 287 | -bindir $QT4BINDIR \
|
---|
| 288 | -plugindir $QT4PREFIX/lib/qt4/plugins \
|
---|
| 289 | -importdir $QT4PREFIX/lib/qt4/imports \
|
---|
| 290 | -headerdir $QT4PREFIX/include/qt4 \
|
---|
| 291 | -datadir $QT4PREFIX/share/qt4 \
|
---|
| 292 | -docdir $QT4PREFIX/share/doc/qt4 \
|
---|
| 293 | -translationdir $QT4PREFIX/share/qt4/translations \
|
---|
| 294 | -demosdir $QT4PREFIX/share/doc/qt4/demos \
|
---|
| 295 | -examplesdir $QT4PREFIX/share/doc/qt4/examples \
|
---|
[a8ece039] | 296 | -confirm-license \
|
---|
| 297 | -opensource \
|
---|
| 298 | -release \
|
---|
| 299 | -dbus-linked \
|
---|
| 300 | -openssl-linked \
|
---|
| 301 | -system-sqlite \
|
---|
| 302 | -no-phonon \
|
---|
[7af92fe5] | 303 | -no-phonon-backend \
|
---|
[a8ece039] | 304 | -no-openvg \
|
---|
| 305 | -nomake demos \
|
---|
| 306 | -nomake examples \
|
---|
| 307 | -optimized-qmake &&
|
---|
| 308 |
|
---|
[7af92fe5] | 309 | make</userinput></screen>
|
---|
| 310 |
|
---|
| 311 | <para>
|
---|
| 312 | This package does not come with a test suite.
|
---|
| 313 | </para>
|
---|
| 314 |
|
---|
[acacfb64] | 315 | <para>
|
---|
| 316 | Remove references to the build directory from the
|
---|
| 317 | <filename class="extension">.pc</filename> files by running
|
---|
| 318 | the following command:
|
---|
| 319 | </para>
|
---|
| 320 |
|
---|
| 321 | <screen><userinput>find . -name "*.pc" -exec perl -pi -e "s, -L$PWD/?\S+,,g" {} \;</userinput></screen>
|
---|
| 322 |
|
---|
[c65ac49d] | 323 | <warning>
|
---|
| 324 | <para>
|
---|
| 325 | Make sure that <envar>QT4PREFIX</envar> and <envar>QT4BINDIR</envar>
|
---|
| 326 | environment variables are set for the
|
---|
| 327 | <systemitem class="username">root</systemitem> user too.
|
---|
| 328 | </para>
|
---|
| 329 | </warning>
|
---|
| 330 |
|
---|
| 331 | <para>
|
---|
| 332 | Now, as the <systemitem class="username">root</systemitem> user:
|
---|
| 333 | </para>
|
---|
[7af92fe5] | 334 |
|
---|
| 335 | <screen role="root"><userinput>make install &&
|
---|
[c65ac49d] | 336 | rm -rf $QT4PREFIX/tests</userinput></screen>
|
---|
[7af92fe5] | 337 |
|
---|
| 338 | <para>
|
---|
| 339 | Remove references to the build directory from installed files by
|
---|
| 340 | running the following command as the
|
---|
| 341 | <systemitem class="username">root</systemitem> user:
|
---|
| 342 | </para>
|
---|
| 343 |
|
---|
[acacfb64] | 344 | <screen role="root"><userinput>for file in 3Support CLucene Core DBus Declarative DesignerComponents \
|
---|
| 345 | Designer Gui Help Multimedia Network OpenGL Script \
|
---|
[ec7940be] | 346 | ScriptTools Sql Svg Test UiTools WebKit XmlPatterns Xml phonon; do
|
---|
| 347 |
|
---|
[c65ac49d] | 348 | [ -e $QT4PREFIX/lib/libQt${file}.prl ] &&
|
---|
[ec7940be] | 349 | sed -r '/^QMAKE_PRL_BUILD_DIR/d;s/(QMAKE_PRL_LIBS =).*/\1/' \
|
---|
[c65ac49d] | 350 | -i $QT4PREFIX/lib/libQt${file}.prl
|
---|
[a6c6923] | 351 | done
|
---|
| 352 | unset file</userinput></screen>
|
---|
[7af92fe5] | 353 |
|
---|
[fb28b3b] | 354 | <para>
|
---|
[c65ac49d] | 355 | Install images and create the menu entries for installed
|
---|
| 356 | applications by running the following commands
|
---|
| 357 | as the <systemitem class="username">root</systemitem> user:
|
---|
[fb28b3b] | 358 | </para>
|
---|
| 359 |
|
---|
[ec7940be] | 360 | <screen role="root"><userinput>install -v -Dm644 src/gui/dialogs/images/qtlogo-64.png \
|
---|
[c65ac49d] | 361 | /usr/share/pixmaps/qt4logo.png &&
|
---|
[ec7940be] | 362 |
|
---|
[54e9eea] | 363 | install -v -Dm644 tools/assistant/tools/assistant/images/assistant-128.png \
|
---|
| 364 | /usr/share/pixmaps/assistant-qt4.png &&
|
---|
[ec7940be] | 365 |
|
---|
[54e9eea] | 366 | install -v -Dm644 tools/designer/src/designer/images/designer.png \
|
---|
[c65ac49d] | 367 | /usr/share/pixmaps/designer-qt4.png &&
|
---|
[ec7940be] | 368 |
|
---|
[54e9eea] | 369 | install -v -Dm644 tools/linguist/linguist/images/icons/linguist-128-32.png \
|
---|
[c65ac49d] | 370 | /usr/share/pixmaps/linguist-qt4.png &&
|
---|
[ec7940be] | 371 |
|
---|
[54e9eea] | 372 | install -v -Dm644 tools/qdbus/qdbusviewer/images/qdbusviewer-128.png \
|
---|
[ec7940be] | 373 | /usr/share/pixmaps/qdbusviewer-qt4.png &&
|
---|
[54e9eea] | 374 |
|
---|
[c65ac49d] | 375 | install -v -dm755 /usr/share/applications &&
|
---|
[54e9eea] | 376 |
|
---|
[ec7940be] | 377 | cat > /usr/share/applications/assistant-qt4.desktop << EOF
|
---|
| 378 | <literal>[Desktop Entry]
|
---|
| 379 | Name=Qt4 Assistant
|
---|
| 380 | Comment=Shows Qt4 documentation and examples
|
---|
[c65ac49d] | 381 | Exec=$QT4BINDIR/assistant
|
---|
[ec7940be] | 382 | Icon=assistant-qt4.png
|
---|
| 383 | Terminal=false
|
---|
| 384 | Encoding=UTF-8
|
---|
| 385 | Type=Application
|
---|
| 386 | Categories=Qt;Development;Documentation;</literal>
|
---|
| 387 | EOF
|
---|
[54e9eea] | 388 |
|
---|
[ec7940be] | 389 | cat > /usr/share/applications/designer-qt4.desktop << EOF
|
---|
| 390 | <literal>[Desktop Entry]
|
---|
| 391 | Name=Qt4 Designer
|
---|
| 392 | Comment=Design GUIs for Qt4 applications
|
---|
[c65ac49d] | 393 | Exec=$QT4BINDIR/designer
|
---|
[ec7940be] | 394 | Icon=designer-qt4.png
|
---|
| 395 | MimeType=application/x-designer;
|
---|
| 396 | Terminal=false
|
---|
| 397 | Encoding=UTF-8
|
---|
| 398 | Type=Application
|
---|
| 399 | Categories=Qt;Development;</literal>
|
---|
| 400 | EOF
|
---|
[54e9eea] | 401 |
|
---|
[ec7940be] | 402 | cat > /usr/share/applications/linguist-qt4.desktop << EOF
|
---|
| 403 | <literal>[Desktop Entry]
|
---|
| 404 | Name=Qt4 Linguist
|
---|
| 405 | Comment=Add translations to Qt4 applications
|
---|
[c65ac49d] | 406 | Exec=$QT4BINDIR/linguist
|
---|
[ec7940be] | 407 | Icon=linguist-qt4.png
|
---|
| 408 | MimeType=text/vnd.trolltech.linguist;application/x-linguist;
|
---|
| 409 | Terminal=false
|
---|
| 410 | Encoding=UTF-8
|
---|
| 411 | Type=Application
|
---|
| 412 | Categories=Qt;Development;</literal>
|
---|
| 413 | EOF
|
---|
[79904cf] | 414 |
|
---|
[ec7940be] | 415 | cat > /usr/share/applications/qdbusviewer-qt4.desktop << EOF
|
---|
| 416 | <literal>[Desktop Entry]
|
---|
| 417 | Name=Qt4 QDbusViewer
|
---|
| 418 | GenericName=D-Bus Debugger
|
---|
| 419 | Comment=Debug D-Bus applications
|
---|
[c65ac49d] | 420 | Exec=$QT4BINDIR/qdbusviewer
|
---|
[ec7940be] | 421 | Icon=qdbusviewer-qt4.png
|
---|
| 422 | Terminal=false
|
---|
| 423 | Encoding=UTF-8
|
---|
| 424 | Type=Application
|
---|
| 425 | Categories=Qt;Development;Debugger;</literal>
|
---|
| 426 | EOF
|
---|
[79904cf] | 427 |
|
---|
[ec7940be] | 428 | cat > /usr/share/applications/qtconfig-qt4.desktop << EOF
|
---|
| 429 | <literal>[Desktop Entry]
|
---|
| 430 | Name=Qt4 Config
|
---|
| 431 | Comment=Configure Qt4 behavior, styles, fonts
|
---|
[c65ac49d] | 432 | Exec=$QT4BINDIR/qtconfig
|
---|
[ec7940be] | 433 | Icon=qt4logo.png
|
---|
| 434 | Terminal=false
|
---|
| 435 | Encoding=UTF-8
|
---|
| 436 | Type=Application
|
---|
| 437 | Categories=Qt;Settings;</literal>
|
---|
| 438 | EOF</userinput></screen>
|
---|
[79904cf] | 439 |
|
---|
[c65ac49d] | 440 | <para>
|
---|
| 441 | Some packages look for <application>Qt4</application> executables
|
---|
| 442 | with <filename>-qt4</filename> suffix. Run the following command
|
---|
| 443 | as the <systemitem class="username">root</systemitem> user to
|
---|
| 444 | create the necessary symlinks:
|
---|
| 445 | </para>
|
---|
| 446 |
|
---|
| 447 | <screen role="root"><userinput>for file in $QT4BINDIR/*; do
|
---|
| 448 | ln -sfrv $file /usr/bin/$(basename $file)-qt4
|
---|
| 449 | done</userinput></screen>
|
---|
| 450 |
|
---|
[7af92fe5] | 451 | </sect2>
|
---|
| 452 |
|
---|
| 453 | <sect2 role="commands">
|
---|
| 454 | <title>Command Explanations</title>
|
---|
| 455 |
|
---|
[a6c6923] | 456 | <para>
|
---|
[57242ab] | 457 | <command>sed -i ...</command>: First command fixes detection of
|
---|
| 458 | <application>libmng</application> 2.0 and second one prevents configure
|
---|
[ec7940be] | 459 | script from writing to the root directory if building as privileged user.
|
---|
[a6c6923] | 460 | </para>
|
---|
| 461 |
|
---|
[7af92fe5] | 462 | <para>
|
---|
| 463 | <parameter>-confirm-license</parameter>: Accept license
|
---|
| 464 | without prompting user during configuration.
|
---|
| 465 | </para>
|
---|
| 466 |
|
---|
| 467 | <para>
|
---|
| 468 | <parameter>-opensource</parameter>: Install the opensource
|
---|
| 469 | version of <application>Qt</application>.
|
---|
| 470 | </para>
|
---|
| 471 |
|
---|
[8d4b121] | 472 | <para>
|
---|
| 473 | <parameter>-release</parameter>: This switch disables
|
---|
| 474 | building with debugging symbols.
|
---|
| 475 | </para>
|
---|
[7af92fe5] | 476 |
|
---|
| 477 | <para>
|
---|
| 478 | <parameter>-nomake examples -nomake demos</parameter>:
|
---|
| 479 | These switches disable building programs that are only of
|
---|
[ec7940be] | 480 | interest to a developer using <application>Qt</application>.
|
---|
[7af92fe5] | 481 | </para>
|
---|
| 482 |
|
---|
| 483 | <para>
|
---|
| 484 | <parameter>-system-sqlite</parameter>: This switch enables use
|
---|
| 485 | the system version of <application>SQLite</application>.
|
---|
| 486 | </para>
|
---|
| 487 |
|
---|
| 488 | <para>
|
---|
| 489 | <parameter>-no-phonon -no-phonon-backend</parameter>: These
|
---|
| 490 | switches disable building of the bundled
|
---|
| 491 | <application>Phonon</application> library. Better version
|
---|
| 492 | is provided by <xref linkend="phonon"/> package.
|
---|
| 493 | </para>
|
---|
| 494 |
|
---|
| 495 | <para>
|
---|
[05dcb8af] | 496 | <parameter>-dbus-linked -openssl-linked</parameter>: These
|
---|
[7af92fe5] | 497 | switches enable explicit linking of the
|
---|
| 498 | <application>D-Bus</application> and
|
---|
| 499 | <application>OpenSSL</application> libraries into
|
---|
| 500 | <application>Qt</application> libraries instead of
|
---|
| 501 | <command>dlopen()</command>-ing them.
|
---|
| 502 | </para>
|
---|
| 503 |
|
---|
| 504 | <para>
|
---|
| 505 | <parameter>-no-openvg</parameter>: This switch disables
|
---|
| 506 | <application>OpenVG</application> support in
|
---|
| 507 | <application>Qt</application>.
|
---|
| 508 | </para>
|
---|
| 509 |
|
---|
[8d4b121] | 510 | <para>
|
---|
| 511 | <parameter>-optimized-qmake</parameter>: This switch enables
|
---|
| 512 | building of the optimized <command>qmake</command> program.
|
---|
| 513 | </para>
|
---|
| 514 |
|
---|
[7af92fe5] | 515 | </sect2>
|
---|
| 516 |
|
---|
| 517 | <sect2 role="configuration">
|
---|
[c65ac49d] | 518 | <title>Configuring Qt4</title>
|
---|
[7af92fe5] | 519 |
|
---|
| 520 | <sect3 id="qt4-config">
|
---|
| 521 | <title>Configuration Information</title>
|
---|
| 522 |
|
---|
[c65ac49d] | 523 | <note>
|
---|
| 524 | <para>
|
---|
| 525 | If you have installed <application>Qt4</application>
|
---|
| 526 | in <filename class="directory">/usr</filename> you
|
---|
| 527 | can skip this section.
|
---|
| 528 | </para>
|
---|
| 529 | </note>
|
---|
| 530 |
|
---|
| 531 | <para>
|
---|
| 532 | If you installed <application>Qt4</application> in a location other
|
---|
| 533 | than <filename class="directory">/usr</filename>, you need to update the
|
---|
| 534 | following configuration files so that <application>Qt5</application> is
|
---|
| 535 | correctly found by other packages and system processes.
|
---|
| 536 | </para>
|
---|
| 537 |
|
---|
| 538 | <para>
|
---|
| 539 | As the <systemitem class="username">root</systemitem> user, update
|
---|
| 540 | the <filename>/etc/ld.so.conf</filename> file and the dynamic linker's
|
---|
| 541 | run-time cache file:
|
---|
| 542 | </para>
|
---|
| 543 |
|
---|
| 544 | <screen role="root"><userinput>cat >> /etc/ld.so.conf << EOF
|
---|
| 545 | <literal># Begin Qt4 addition
|
---|
| 546 |
|
---|
| 547 | $QT4PREFIX/lib
|
---|
| 548 |
|
---|
| 549 | # End Qt4 addition</literal>
|
---|
| 550 | EOF
|
---|
| 551 |
|
---|
| 552 | ldconfig</userinput></screen>
|
---|
| 553 |
|
---|
| 554 | <indexterm zone="qt4 qt4-config">
|
---|
| 555 | <primary sortas="e-etc-ld.so.conf">/etc/ld.so.conf</primary>
|
---|
| 556 | </indexterm>
|
---|
| 557 |
|
---|
[7af92fe5] | 558 | <para>
|
---|
[c65ac49d] | 559 | If you have installed <xref linkend="qtchooser"/>, create
|
---|
| 560 | the <filename>/etc/profile.d/qt4.sh</filename> file by
|
---|
| 561 | running the following command as the
|
---|
| 562 | <systemitem class="username">root</systemitem> user:
|
---|
[7af92fe5] | 563 | </para>
|
---|
| 564 |
|
---|
[41ddd5f] | 565 | <screen role="root"><userinput>cat > /etc/profile.d/qt4.sh << EOF
|
---|
| 566 | <literal># Begin /etc/profile.d/qt4.sh
|
---|
[7af92fe5] | 567 |
|
---|
[c65ac49d] | 568 | pathappend $QT4PREFIX/lib/pkgconfig PKG_CONFIG_PATH
|
---|
[7af92fe5] | 569 |
|
---|
[41ddd5f] | 570 | # End /etc/profile.d/qt4.sh</literal>
|
---|
[7af92fe5] | 571 | EOF</userinput></screen>
|
---|
| 572 |
|
---|
[c65ac49d] | 573 | <para>
|
---|
| 574 | If you have not installed <xref linkend="qtchooser"/>,
|
---|
| 575 | create the <filename>/etc/profile.d/qt4.sh</filename>
|
---|
| 576 | file by running the following command as the
|
---|
| 577 | <systemitem class="username">root</systemitem> user:
|
---|
| 578 | </para>
|
---|
[54e9eea] | 579 |
|
---|
[41ddd5f] | 580 | <screen role="root"><userinput>cat > /etc/profile.d/qt4.sh << EOF
|
---|
| 581 | <literal># Begin /etc/profile.d/qt4.sh
|
---|
[c65ac49d] | 582 |
|
---|
| 583 | pathappend $QT4BINDIR PATH
|
---|
| 584 | pathappend $QT4PREFIX/lib/pkgconfig PKG_CONFIG_PATH
|
---|
| 585 |
|
---|
[41ddd5f] | 586 | # End /etc/profile.d/qt4.sh</literal>
|
---|
[54e9eea] | 587 | EOF</userinput></screen>
|
---|
| 588 |
|
---|
[c65ac49d] | 589 | <note>
|
---|
| 590 | <para>
|
---|
| 591 | If <xref linkend="qtchooser"/> is not installed and you
|
---|
| 592 | also have <application>Qt5</application> installed,
|
---|
| 593 | you will need to manually adjust the <envar>PATH</envar>
|
---|
| 594 | variable depending on which <application>Qt</application>
|
---|
| 595 | version is needed.
|
---|
| 596 | </para>
|
---|
| 597 | </note>
|
---|
[7af92fe5] | 598 |
|
---|
| 599 | </sect3>
|
---|
[c65ac49d] | 600 |
|
---|
[7af92fe5] | 601 | </sect2>
|
---|
| 602 |
|
---|
| 603 | <sect2 role="content">
|
---|
| 604 | <title>Contents</title>
|
---|
| 605 |
|
---|
| 606 | <segmentedlist>
|
---|
| 607 | <segtitle>Installed Programs</segtitle>
|
---|
| 608 | <segtitle>Installed Libraries</segtitle>
|
---|
| 609 | <segtitle>Installed Directories</segtitle>
|
---|
| 610 |
|
---|
| 611 | <seglistitem>
|
---|
| 612 | <seg>
|
---|
[ec7940be] | 613 | assistant, designer, lconvert, linguist,
|
---|
| 614 | lrelease, lupdate, moc, pixeltool,
|
---|
| 615 | qcollectiongenerator, qdbuscpp2xml, qdbus,
|
---|
| 616 | qdbusviewer, qdbusxml2cpp, qdoc3, qhelpconverter,
|
---|
| 617 | qhelpgenerator, qmake, qmlplugindump, qmlviewer,
|
---|
| 618 | qt3to4, qtconfig, qttracereplay, rcc, uic3,
|
---|
| 619 | uic, xmlpatterns, and xmlpatternsvalidator
|
---|
[7af92fe5] | 620 | </seg>
|
---|
| 621 | <seg>
|
---|
[18310d86] | 622 | libQtUiTools.a, libQt3Support.so, libQtCLucene.so, libQtCore.so,
|
---|
| 623 | libQtDBus.so, libQtDeclarative.so, libQtDesignerComponents.so,
|
---|
[8d4b121] | 624 | libQtDesigner.so, libQtGui.so, libQtHelp.so, libQtMultimedia.so,
|
---|
| 625 | libQtNetwork.so, libQtOpenGL.so, libQtScript.so, libQtScriptTools.so,
|
---|
| 626 | libQtSql.so, libQtSvg.so, libQtTest.so, libQtWebKit.so,
|
---|
[18310d86] | 627 | libQtXmlPatterns.so, and libQtXml.so, and several plugins under
|
---|
| 628 | /opt/qt4/imports and /opt/qt4/plugins
|
---|
[7af92fe5] | 629 | </seg>
|
---|
| 630 | <seg>
|
---|
[c65ac49d] | 631 | $QT4PREFIX/include/qt4,
|
---|
| 632 | $QT4PREFIX/lib/qt4,
|
---|
| 633 | $QT4PREFIX/share/doc/qt4, and
|
---|
| 634 | $QT4PREFIX/share/qt4
|
---|
[7af92fe5] | 635 | </seg>
|
---|
| 636 | </seglistitem>
|
---|
| 637 | </segmentedlist>
|
---|
| 638 |
|
---|
| 639 | <variablelist>
|
---|
| 640 | <bridgehead renderas="sect3">Short Descriptions</bridgehead>
|
---|
| 641 | <?dbfo list-presentation="list"?>
|
---|
| 642 | <?dbhtml list-presentation="table"?>
|
---|
| 643 |
|
---|
[8d4b121] | 644 | <varlistentry id="assistant-qt4">
|
---|
[ec7940be] | 645 | <term><command>assistant</command></term>
|
---|
[7af92fe5] | 646 | <listitem>
|
---|
| 647 | <para>
|
---|
| 648 | is a tool for presenting on-line documentation.
|
---|
| 649 | </para>
|
---|
[8d4b121] | 650 | <indexterm zone="qt4 assistant-qt4">
|
---|
[ec7940be] | 651 | <primary sortas="b-assistant-qt4">assistant</primary>
|
---|
[7af92fe5] | 652 | </indexterm>
|
---|
| 653 | </listitem>
|
---|
| 654 | </varlistentry>
|
---|
| 655 |
|
---|
[8d4b121] | 656 | <varlistentry id="designer-qt4">
|
---|
[ec7940be] | 657 | <term><command>designer</command></term>
|
---|
[7af92fe5] | 658 | <listitem>
|
---|
| 659 | <para>
|
---|
| 660 | is a full-fledged GUI builder. It includes
|
---|
| 661 | powerful features such as preview mode, automatic widget
|
---|
| 662 | layout, support for custom widgets, and an advanced
|
---|
| 663 | property editor.
|
---|
| 664 | </para>
|
---|
[8d4b121] | 665 | <indexterm zone="qt4 designer-qt4">
|
---|
[ec7940be] | 666 | <primary sortas="b-designer-qt4">designer</primary>
|
---|
[7af92fe5] | 667 | </indexterm>
|
---|
| 668 | </listitem>
|
---|
| 669 | </varlistentry>
|
---|
| 670 |
|
---|
[8d4b121] | 671 | <varlistentry id="linguist-qt4">
|
---|
[ec7940be] | 672 | <term><command>linguist</command></term>
|
---|
[7af92fe5] | 673 | <listitem>
|
---|
| 674 | <para>
|
---|
| 675 | provides support for translating applications into
|
---|
| 676 | local languages.
|
---|
| 677 | </para>
|
---|
[8d4b121] | 678 | <indexterm zone="qt4 linguist-qt4">
|
---|
[ec7940be] | 679 | <primary sortas="b-linguist-qt4">linguist</primary>
|
---|
[7af92fe5] | 680 | </indexterm>
|
---|
| 681 | </listitem>
|
---|
| 682 | </varlistentry>
|
---|
| 683 |
|
---|
[8d4b121] | 684 | <varlistentry id="lrelease-qt4">
|
---|
[ec7940be] | 685 | <term><command>lrelease</command></term>
|
---|
[7af92fe5] | 686 | <listitem>
|
---|
| 687 | <para>
|
---|
| 688 | is a simple command line tool. It reads a Qt project
|
---|
| 689 | file and produces message files used by the application.
|
---|
| 690 | </para>
|
---|
[8d4b121] | 691 | <indexterm zone="qt4 lrelease-qt4">
|
---|
[ec7940be] | 692 | <primary sortas="b-lrelease-qt4">lrelease</primary>
|
---|
[7af92fe5] | 693 | </indexterm>
|
---|
| 694 | </listitem>
|
---|
| 695 | </varlistentry>
|
---|
| 696 |
|
---|
[8d4b121] | 697 | <varlistentry id="lupdate-qt4">
|
---|
[ec7940be] | 698 | <term><command>lupdate</command></term>
|
---|
[7af92fe5] | 699 | <listitem>
|
---|
| 700 | <para>
|
---|
| 701 | reads a Qt project file, finds the translatable
|
---|
| 702 | strings in the specified source, header and Qt Designer
|
---|
| 703 | interface files, and produces or updates the translation
|
---|
| 704 | files listed in the project file.
|
---|
| 705 | </para>
|
---|
[8d4b121] | 706 | <indexterm zone="qt4 lupdate-qt4">
|
---|
[ec7940be] | 707 | <primary sortas="b-lupdate-qt4">lupdate</primary>
|
---|
[7af92fe5] | 708 | </indexterm>
|
---|
| 709 | </listitem>
|
---|
| 710 | </varlistentry>
|
---|
| 711 |
|
---|
[8d4b121] | 712 | <varlistentry id="moc-qt4">
|
---|
[ec7940be] | 713 | <term><command>moc</command></term>
|
---|
[7af92fe5] | 714 | <listitem>
|
---|
| 715 | <para>
|
---|
| 716 | generates Qt meta object support code.
|
---|
| 717 | </para>
|
---|
[8d4b121] | 718 | <indexterm zone="qt4 moc-qt4">
|
---|
[ec7940be] | 719 | <primary sortas="b-moc-qt4">moc</primary>
|
---|
[7af92fe5] | 720 | </indexterm>
|
---|
| 721 | </listitem>
|
---|
| 722 | </varlistentry>
|
---|
| 723 |
|
---|
[8d4b121] | 724 | <varlistentry id="pixeltool-qt4">
|
---|
[ec7940be] | 725 | <term><command>pixeltool</command></term>
|
---|
[7af92fe5] | 726 | <listitem>
|
---|
| 727 | <para>
|
---|
| 728 | is a desktop magnifier and as you move your mouse around
|
---|
| 729 | the screen it will show the magnified contents in its window.
|
---|
| 730 | </para>
|
---|
[8d4b121] | 731 | <indexterm zone="qt4 pixeltool-qt4">
|
---|
[ec7940be] | 732 | <primary sortas="b-pixeltool-qt4">pixeltool</primary>
|
---|
[7af92fe5] | 733 | </indexterm>
|
---|
| 734 | </listitem>
|
---|
| 735 | </varlistentry>
|
---|
| 736 |
|
---|
[8d4b121] | 737 | <varlistentry id="qmake-qt4">
|
---|
[ec7940be] | 738 | <term><command>qmake</command></term>
|
---|
[7af92fe5] | 739 | <listitem>
|
---|
| 740 | <para>
|
---|
| 741 | uses information stored in project files to
|
---|
| 742 | determine what should go in the makefiles it
|
---|
| 743 | generates.
|
---|
| 744 | </para>
|
---|
[8d4b121] | 745 | <indexterm zone="qt4 qmake-qt4">
|
---|
[ec7940be] | 746 | <primary sortas="b-qmake-qt4">qmake</primary>
|
---|
[7af92fe5] | 747 | </indexterm>
|
---|
| 748 | </listitem>
|
---|
| 749 | </varlistentry>
|
---|
| 750 |
|
---|
[8d4b121] | 751 | <varlistentry id="qt3to4-qt4">
|
---|
[ec7940be] | 752 | <term><command>qt3to4</command></term>
|
---|
[7af92fe5] | 753 | <listitem>
|
---|
| 754 | <para>
|
---|
| 755 | qt3to4 is a tool to help update Qt3 code to Qt4.
|
---|
| 756 | </para>
|
---|
[8d4b121] | 757 | <indexterm zone="qt4 qt3to4-qt4">
|
---|
[ec7940be] | 758 | <primary sortas="b-qt3to4-qt4">qt3to4</primary>
|
---|
[7af92fe5] | 759 | </indexterm>
|
---|
| 760 | </listitem>
|
---|
| 761 | </varlistentry>
|
---|
| 762 |
|
---|
[8d4b121] | 763 | <varlistentry id="qtconfig-qt4">
|
---|
[ec7940be] | 764 | <term><command>qtconfig</command></term>
|
---|
[7af92fe5] | 765 | <listitem>
|
---|
| 766 | <para>
|
---|
| 767 | is used to customize the appearance of Qt applications.
|
---|
| 768 | </para>
|
---|
[8d4b121] | 769 | <indexterm zone="qt4 qtconfig-qt4">
|
---|
[ec7940be] | 770 | <primary sortas="b-qtconfig-qt4">qtconfig</primary>
|
---|
[7af92fe5] | 771 | </indexterm>
|
---|
| 772 | </listitem>
|
---|
| 773 | </varlistentry>
|
---|
| 774 |
|
---|
[8d4b121] | 775 | <varlistentry id="rcc-qt4">
|
---|
[ec7940be] | 776 | <term><command>rcc</command></term>
|
---|
[7af92fe5] | 777 | <listitem>
|
---|
| 778 | <para>
|
---|
| 779 | is a resource compiler used in conjunction with designer.
|
---|
| 780 | </para>
|
---|
[8d4b121] | 781 | <indexterm zone="qt4 rcc-qt4">
|
---|
[ec7940be] | 782 | <primary sortas="b-rcc-qt4">rcc</primary>
|
---|
[7af92fe5] | 783 | </indexterm>
|
---|
| 784 | </listitem>
|
---|
| 785 | </varlistentry>
|
---|
| 786 |
|
---|
[8d4b121] | 787 | <varlistentry id="uic-qt4">
|
---|
[ec7940be] | 788 | <term><command>uic</command></term>
|
---|
[7af92fe5] | 789 | <listitem>
|
---|
| 790 | <para>
|
---|
| 791 | is a Qt user interface compiler.
|
---|
| 792 | </para>
|
---|
[8d4b121] | 793 | <indexterm zone="qt4 uic-qt4">
|
---|
[ec7940be] | 794 | <primary sortas="b-uic-qt4">uic</primary>
|
---|
[7af92fe5] | 795 | </indexterm>
|
---|
| 796 | </listitem>
|
---|
| 797 | </varlistentry>
|
---|
| 798 |
|
---|
[8d4b121] | 799 | <varlistentry id="uic3-qt4">
|
---|
[ec7940be] | 800 | <term><command>uic3</command></term>
|
---|
[7af92fe5] | 801 | <listitem>
|
---|
| 802 | <para>
|
---|
| 803 | is a tool to generate Qt4 code out of
|
---|
| 804 | user interface files generated by the Qt3
|
---|
| 805 | version of designer.
|
---|
| 806 | </para>
|
---|
[8d4b121] | 807 | <indexterm zone="qt4 uic3-qt4">
|
---|
[ec7940be] | 808 | <primary sortas="b-uic3-qt4">uic3</primary>
|
---|
[7af92fe5] | 809 | </indexterm>
|
---|
| 810 | </listitem>
|
---|
| 811 | </varlistentry>
|
---|
| 812 |
|
---|
| 813 | </variablelist>
|
---|
| 814 |
|
---|
| 815 | </sect2>
|
---|
| 816 |
|
---|
| 817 | </sect1>
|
---|