[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 |
|
---|
[09ae65ca] | 43 | &lfs76_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 |
|
---|
[7b9cf96] | 196 | <bridgehead renderas="sect3">Setting the install location for executables</bridgehead>
|
---|
[c65ac49d] | 197 |
|
---|
| 198 | <para>
|
---|
| 199 | Both <application>Qt4</application> and
|
---|
| 200 | <application>Qt5</application> executables have
|
---|
| 201 | the same names and will overwrite each other if
|
---|
| 202 | they are installed in the same prefix. To overcome
|
---|
| 203 | such problem, BLFS offers <xref linkend="qtchooser"/>,
|
---|
| 204 | an utility used to switch between different
|
---|
| 205 | <application>Qt</application> versions.
|
---|
| 206 | </para>
|
---|
| 207 |
|
---|
| 208 | <para>
|
---|
| 209 | If <xref linkend="qtchooser"/> is to be used or
|
---|
| 210 | if installing both <application>Qt4</application>
|
---|
| 211 | and <application>Qt5</application> in
|
---|
| 212 | <filename class="directory">/usr</filename>, the
|
---|
| 213 | executables need to be installed to a non-standard
|
---|
| 214 | location in order to avoid the conflict with
|
---|
| 215 | <application>Qt5</application> ones. To accomplish
|
---|
| 216 | that, set the following environment variable:
|
---|
| 217 | </para>
|
---|
| 218 |
|
---|
| 219 | <screen><userinput>export QT4BINDIR=$QT4PREFIX/lib/qt4/bin</userinput></screen>
|
---|
| 220 |
|
---|
| 221 | <para>
|
---|
| 222 | If you choose not to install <xref linkend="qtchooser"/>
|
---|
| 223 | or if you are not going to install
|
---|
| 224 | <application>Qt5</application>, simply set the bindir to
|
---|
| 225 | a <filename class="directory">bin</filename> subdir of the
|
---|
| 226 | default prefix by setting the following environment variable:
|
---|
| 227 | </para>
|
---|
| 228 |
|
---|
| 229 | <screen><userinput>export QT4BINDIR=$QT4PREFIX/bin</userinput></screen>
|
---|
| 230 |
|
---|
| 231 | </sect2>
|
---|
[ec7940be] | 232 |
|
---|
[7af92fe5] | 233 | <sect2 role="installation">
|
---|
[c65ac49d] | 234 | <title>Installation of Qt4</title>
|
---|
[7af92fe5] | 235 |
|
---|
[fb28b3b] | 236 | <caution>
|
---|
[8d4b121] | 237 | <para>
|
---|
| 238 | If you did not install some of the recommended dependencies, examine
|
---|
| 239 | <command>./configure --help</command> output to check how to disable
|
---|
| 240 | them or use internal versions bundled in the source tarball.
|
---|
| 241 | </para>
|
---|
[fb28b3b] | 242 | </caution>
|
---|
[8d4b121] | 243 |
|
---|
[fb28b3b] | 244 | <warning>
|
---|
[7af92fe5] | 245 | <para>
|
---|
[fb28b3b] | 246 | If <application>Qt4</application> is being reinstalled into the
|
---|
[9f193fc] | 247 | same directory as an existing instance, run the commands done by
|
---|
[775fbafd] | 248 | <systemitem class="username">root</systemitem>, such as
|
---|
| 249 | <command>make install</command>, from a console or non-Qt4 based
|
---|
[9f193fc] | 250 | window manager. It overwrites <application>Qt4</application>
|
---|
| 251 | libraries that should not be in use during the install process.
|
---|
[7af92fe5] | 252 | </para>
|
---|
[fb28b3b] | 253 | </warning>
|
---|
[7af92fe5] | 254 |
|
---|
| 255 | <note>
|
---|
| 256 | <para>
|
---|
| 257 | The build time and space required for the full
|
---|
| 258 | <application>Qt</application> is quite long. The instructions below
|
---|
| 259 | do not build the tutorials and examples. Removing the
|
---|
| 260 | <parameter>-nomake</parameter> lines will create a complete build.
|
---|
| 261 | </para>
|
---|
| 262 | </note>
|
---|
| 263 |
|
---|
[adf64fa0] | 264 | <para>
|
---|
| 265 | Fix DoS vulnerability in the GIF image handler:
|
---|
| 266 | </para>
|
---|
| 267 |
|
---|
| 268 | <screen><userinput>sed -i -e '631a if (image->isNull()) { state = Error; return -1; }' \
|
---|
| 269 | src/gui/image/qgifhandler.cpp</userinput></screen>
|
---|
| 270 |
|
---|
[7af92fe5] | 271 | <para>
|
---|
[c65ac49d] | 272 | Install <application>Qt4</application> by running the
|
---|
| 273 | following commands:
|
---|
[7af92fe5] | 274 | </para>
|
---|
| 275 |
|
---|
[c65ac49d] | 276 | <screen><userinput>sed -i -e "/#if/d" -e "/#error/d" -e "/#endif/d" \
|
---|
[a6c6923] | 277 | config.tests/unix/libmng/libmng.cpp &&
|
---|
[ec7940be] | 278 |
|
---|
[57242ab] | 279 | sed -i '/CONFIG -/ a\isEmpty(OUTPUT_DIR): OUTPUT_DIR = ../..' \
|
---|
| 280 | src/3rdparty/webkit/Source/WebKit2/DerivedSources.pro &&
|
---|
[a6c6923] | 281 |
|
---|
[c65ac49d] | 282 | ./configure -prefix $QT4PREFIX \
|
---|
| 283 | -sysconfdir /etc/xdg \
|
---|
| 284 | -bindir $QT4BINDIR \
|
---|
| 285 | -plugindir $QT4PREFIX/lib/qt4/plugins \
|
---|
| 286 | -importdir $QT4PREFIX/lib/qt4/imports \
|
---|
| 287 | -headerdir $QT4PREFIX/include/qt4 \
|
---|
| 288 | -datadir $QT4PREFIX/share/qt4 \
|
---|
| 289 | -docdir $QT4PREFIX/share/doc/qt4 \
|
---|
| 290 | -translationdir $QT4PREFIX/share/qt4/translations \
|
---|
| 291 | -demosdir $QT4PREFIX/share/doc/qt4/demos \
|
---|
| 292 | -examplesdir $QT4PREFIX/share/doc/qt4/examples \
|
---|
[a8ece039] | 293 | -confirm-license \
|
---|
| 294 | -opensource \
|
---|
| 295 | -release \
|
---|
| 296 | -dbus-linked \
|
---|
| 297 | -openssl-linked \
|
---|
| 298 | -system-sqlite \
|
---|
| 299 | -no-phonon \
|
---|
[7af92fe5] | 300 | -no-phonon-backend \
|
---|
[a8ece039] | 301 | -no-openvg \
|
---|
| 302 | -nomake demos \
|
---|
| 303 | -nomake examples \
|
---|
| 304 | -optimized-qmake &&
|
---|
| 305 |
|
---|
[7af92fe5] | 306 | make</userinput></screen>
|
---|
| 307 |
|
---|
| 308 | <para>
|
---|
| 309 | This package does not come with a test suite.
|
---|
| 310 | </para>
|
---|
| 311 |
|
---|
[acacfb64] | 312 | <para>
|
---|
| 313 | Remove references to the build directory from the
|
---|
| 314 | <filename class="extension">.pc</filename> files by running
|
---|
| 315 | the following command:
|
---|
| 316 | </para>
|
---|
| 317 |
|
---|
| 318 | <screen><userinput>find . -name "*.pc" -exec perl -pi -e "s, -L$PWD/?\S+,,g" {} \;</userinput></screen>
|
---|
| 319 |
|
---|
[c65ac49d] | 320 | <warning>
|
---|
| 321 | <para>
|
---|
| 322 | Make sure that <envar>QT4PREFIX</envar> and <envar>QT4BINDIR</envar>
|
---|
| 323 | environment variables are set for the
|
---|
| 324 | <systemitem class="username">root</systemitem> user too.
|
---|
| 325 | </para>
|
---|
| 326 | </warning>
|
---|
| 327 |
|
---|
| 328 | <para>
|
---|
| 329 | Now, as the <systemitem class="username">root</systemitem> user:
|
---|
| 330 | </para>
|
---|
[7af92fe5] | 331 |
|
---|
| 332 | <screen role="root"><userinput>make install &&
|
---|
[c65ac49d] | 333 | rm -rf $QT4PREFIX/tests</userinput></screen>
|
---|
[7af92fe5] | 334 |
|
---|
| 335 | <para>
|
---|
| 336 | Remove references to the build directory from installed files by
|
---|
| 337 | running the following command as the
|
---|
| 338 | <systemitem class="username">root</systemitem> user:
|
---|
| 339 | </para>
|
---|
| 340 |
|
---|
[acacfb64] | 341 | <screen role="root"><userinput>for file in 3Support CLucene Core DBus Declarative DesignerComponents \
|
---|
| 342 | Designer Gui Help Multimedia Network OpenGL Script \
|
---|
[ec7940be] | 343 | ScriptTools Sql Svg Test UiTools WebKit XmlPatterns Xml phonon; do
|
---|
| 344 |
|
---|
[c65ac49d] | 345 | [ -e $QT4PREFIX/lib/libQt${file}.prl ] &&
|
---|
[ec7940be] | 346 | sed -r '/^QMAKE_PRL_BUILD_DIR/d;s/(QMAKE_PRL_LIBS =).*/\1/' \
|
---|
[c65ac49d] | 347 | -i $QT4PREFIX/lib/libQt${file}.prl
|
---|
[a6c6923] | 348 | done
|
---|
| 349 | unset file</userinput></screen>
|
---|
[7af92fe5] | 350 |
|
---|
[fb28b3b] | 351 | <para>
|
---|
[c65ac49d] | 352 | Install images and create the menu entries for installed
|
---|
| 353 | applications by running the following commands
|
---|
| 354 | as the <systemitem class="username">root</systemitem> user:
|
---|
[fb28b3b] | 355 | </para>
|
---|
| 356 |
|
---|
[ec7940be] | 357 | <screen role="root"><userinput>install -v -Dm644 src/gui/dialogs/images/qtlogo-64.png \
|
---|
[c65ac49d] | 358 | /usr/share/pixmaps/qt4logo.png &&
|
---|
[ec7940be] | 359 |
|
---|
[54e9eea] | 360 | install -v -Dm644 tools/assistant/tools/assistant/images/assistant-128.png \
|
---|
| 361 | /usr/share/pixmaps/assistant-qt4.png &&
|
---|
[ec7940be] | 362 |
|
---|
[54e9eea] | 363 | install -v -Dm644 tools/designer/src/designer/images/designer.png \
|
---|
[c65ac49d] | 364 | /usr/share/pixmaps/designer-qt4.png &&
|
---|
[ec7940be] | 365 |
|
---|
[54e9eea] | 366 | install -v -Dm644 tools/linguist/linguist/images/icons/linguist-128-32.png \
|
---|
[c65ac49d] | 367 | /usr/share/pixmaps/linguist-qt4.png &&
|
---|
[ec7940be] | 368 |
|
---|
[54e9eea] | 369 | install -v -Dm644 tools/qdbus/qdbusviewer/images/qdbusviewer-128.png \
|
---|
[ec7940be] | 370 | /usr/share/pixmaps/qdbusviewer-qt4.png &&
|
---|
[54e9eea] | 371 |
|
---|
[c65ac49d] | 372 | install -v -dm755 /usr/share/applications &&
|
---|
[54e9eea] | 373 |
|
---|
[ec7940be] | 374 | cat > /usr/share/applications/assistant-qt4.desktop << EOF
|
---|
| 375 | <literal>[Desktop Entry]
|
---|
| 376 | Name=Qt4 Assistant
|
---|
| 377 | Comment=Shows Qt4 documentation and examples
|
---|
[c65ac49d] | 378 | Exec=$QT4BINDIR/assistant
|
---|
[ec7940be] | 379 | Icon=assistant-qt4.png
|
---|
| 380 | Terminal=false
|
---|
| 381 | Encoding=UTF-8
|
---|
| 382 | Type=Application
|
---|
| 383 | Categories=Qt;Development;Documentation;</literal>
|
---|
| 384 | EOF
|
---|
[54e9eea] | 385 |
|
---|
[ec7940be] | 386 | cat > /usr/share/applications/designer-qt4.desktop << EOF
|
---|
| 387 | <literal>[Desktop Entry]
|
---|
| 388 | Name=Qt4 Designer
|
---|
| 389 | Comment=Design GUIs for Qt4 applications
|
---|
[c65ac49d] | 390 | Exec=$QT4BINDIR/designer
|
---|
[ec7940be] | 391 | Icon=designer-qt4.png
|
---|
| 392 | MimeType=application/x-designer;
|
---|
| 393 | Terminal=false
|
---|
| 394 | Encoding=UTF-8
|
---|
| 395 | Type=Application
|
---|
| 396 | Categories=Qt;Development;</literal>
|
---|
| 397 | EOF
|
---|
[54e9eea] | 398 |
|
---|
[ec7940be] | 399 | cat > /usr/share/applications/linguist-qt4.desktop << EOF
|
---|
| 400 | <literal>[Desktop Entry]
|
---|
| 401 | Name=Qt4 Linguist
|
---|
| 402 | Comment=Add translations to Qt4 applications
|
---|
[c65ac49d] | 403 | Exec=$QT4BINDIR/linguist
|
---|
[ec7940be] | 404 | Icon=linguist-qt4.png
|
---|
| 405 | MimeType=text/vnd.trolltech.linguist;application/x-linguist;
|
---|
| 406 | Terminal=false
|
---|
| 407 | Encoding=UTF-8
|
---|
| 408 | Type=Application
|
---|
| 409 | Categories=Qt;Development;</literal>
|
---|
| 410 | EOF
|
---|
[79904cf] | 411 |
|
---|
[ec7940be] | 412 | cat > /usr/share/applications/qdbusviewer-qt4.desktop << EOF
|
---|
| 413 | <literal>[Desktop Entry]
|
---|
| 414 | Name=Qt4 QDbusViewer
|
---|
| 415 | GenericName=D-Bus Debugger
|
---|
| 416 | Comment=Debug D-Bus applications
|
---|
[c65ac49d] | 417 | Exec=$QT4BINDIR/qdbusviewer
|
---|
[ec7940be] | 418 | Icon=qdbusviewer-qt4.png
|
---|
| 419 | Terminal=false
|
---|
| 420 | Encoding=UTF-8
|
---|
| 421 | Type=Application
|
---|
| 422 | Categories=Qt;Development;Debugger;</literal>
|
---|
| 423 | EOF
|
---|
[79904cf] | 424 |
|
---|
[ec7940be] | 425 | cat > /usr/share/applications/qtconfig-qt4.desktop << EOF
|
---|
| 426 | <literal>[Desktop Entry]
|
---|
| 427 | Name=Qt4 Config
|
---|
| 428 | Comment=Configure Qt4 behavior, styles, fonts
|
---|
[c65ac49d] | 429 | Exec=$QT4BINDIR/qtconfig
|
---|
[ec7940be] | 430 | Icon=qt4logo.png
|
---|
| 431 | Terminal=false
|
---|
| 432 | Encoding=UTF-8
|
---|
| 433 | Type=Application
|
---|
| 434 | Categories=Qt;Settings;</literal>
|
---|
| 435 | EOF</userinput></screen>
|
---|
[79904cf] | 436 |
|
---|
[c65ac49d] | 437 | <para>
|
---|
| 438 | Some packages look for <application>Qt4</application> executables
|
---|
| 439 | with <filename>-qt4</filename> suffix. Run the following command
|
---|
| 440 | as the <systemitem class="username">root</systemitem> user to
|
---|
| 441 | create the necessary symlinks:
|
---|
| 442 | </para>
|
---|
| 443 |
|
---|
[fa37f2a] | 444 | <screen role="root"><userinput>for file in assistant designer lconvert linguist lrelease lupdate \
|
---|
| 445 | moc pixeltool qcollectiongenerator qdbus qdbuscpp2xml \
|
---|
| 446 | qdbusviewer qdbusxml2cpp qdoc3 qhelpconverter \
|
---|
| 447 | qhelpgenerator qmake qmlplugindump qmlviewer qt3to4 \
|
---|
| 448 | qtconfig qttracereplay rcc uic uic3 xmlpatterns \
|
---|
| 449 | xmlpatternsvalidator
|
---|
| 450 | do
|
---|
| 451 | ln -sfrv $QT4BINDIR/$file /usr/bin/$file-qt4
|
---|
[09ae65ca] | 452 | done
|
---|
| 453 | unset file</userinput></screen>
|
---|
[c65ac49d] | 454 |
|
---|
[7af92fe5] | 455 | </sect2>
|
---|
| 456 |
|
---|
| 457 | <sect2 role="commands">
|
---|
| 458 | <title>Command Explanations</title>
|
---|
| 459 |
|
---|
[a6c6923] | 460 | <para>
|
---|
[57242ab] | 461 | <command>sed -i ...</command>: First command fixes detection of
|
---|
| 462 | <application>libmng</application> 2.0 and second one prevents configure
|
---|
[ec7940be] | 463 | script from writing to the root directory if building as privileged user.
|
---|
[a6c6923] | 464 | </para>
|
---|
| 465 |
|
---|
[7af92fe5] | 466 | <para>
|
---|
| 467 | <parameter>-confirm-license</parameter>: Accept license
|
---|
| 468 | without prompting user during configuration.
|
---|
| 469 | </para>
|
---|
| 470 |
|
---|
| 471 | <para>
|
---|
| 472 | <parameter>-opensource</parameter>: Install the opensource
|
---|
| 473 | version of <application>Qt</application>.
|
---|
| 474 | </para>
|
---|
| 475 |
|
---|
[8d4b121] | 476 | <para>
|
---|
| 477 | <parameter>-release</parameter>: This switch disables
|
---|
| 478 | building with debugging symbols.
|
---|
| 479 | </para>
|
---|
[7af92fe5] | 480 |
|
---|
| 481 | <para>
|
---|
| 482 | <parameter>-nomake examples -nomake demos</parameter>:
|
---|
| 483 | These switches disable building programs that are only of
|
---|
[ec7940be] | 484 | interest to a developer using <application>Qt</application>.
|
---|
[7af92fe5] | 485 | </para>
|
---|
| 486 |
|
---|
| 487 | <para>
|
---|
| 488 | <parameter>-system-sqlite</parameter>: This switch enables use
|
---|
| 489 | the system version of <application>SQLite</application>.
|
---|
| 490 | </para>
|
---|
| 491 |
|
---|
| 492 | <para>
|
---|
| 493 | <parameter>-no-phonon -no-phonon-backend</parameter>: These
|
---|
| 494 | switches disable building of the bundled
|
---|
| 495 | <application>Phonon</application> library. Better version
|
---|
| 496 | is provided by <xref linkend="phonon"/> package.
|
---|
| 497 | </para>
|
---|
| 498 |
|
---|
| 499 | <para>
|
---|
[05dcb8af] | 500 | <parameter>-dbus-linked -openssl-linked</parameter>: These
|
---|
[7af92fe5] | 501 | switches enable explicit linking of the
|
---|
| 502 | <application>D-Bus</application> and
|
---|
| 503 | <application>OpenSSL</application> libraries into
|
---|
| 504 | <application>Qt</application> libraries instead of
|
---|
| 505 | <command>dlopen()</command>-ing them.
|
---|
| 506 | </para>
|
---|
| 507 |
|
---|
| 508 | <para>
|
---|
| 509 | <parameter>-no-openvg</parameter>: This switch disables
|
---|
| 510 | <application>OpenVG</application> support in
|
---|
| 511 | <application>Qt</application>.
|
---|
| 512 | </para>
|
---|
| 513 |
|
---|
[8d4b121] | 514 | <para>
|
---|
| 515 | <parameter>-optimized-qmake</parameter>: This switch enables
|
---|
| 516 | building of the optimized <command>qmake</command> program.
|
---|
| 517 | </para>
|
---|
| 518 |
|
---|
[7af92fe5] | 519 | </sect2>
|
---|
| 520 |
|
---|
| 521 | <sect2 role="configuration">
|
---|
[c65ac49d] | 522 | <title>Configuring Qt4</title>
|
---|
[7af92fe5] | 523 |
|
---|
| 524 | <sect3 id="qt4-config">
|
---|
| 525 | <title>Configuration Information</title>
|
---|
| 526 |
|
---|
[c65ac49d] | 527 | <note>
|
---|
| 528 | <para>
|
---|
| 529 | If you have installed <application>Qt4</application>
|
---|
| 530 | in <filename class="directory">/usr</filename> you
|
---|
| 531 | can skip this section.
|
---|
| 532 | </para>
|
---|
| 533 | </note>
|
---|
| 534 |
|
---|
| 535 | <para>
|
---|
| 536 | If you installed <application>Qt4</application> in a location other
|
---|
| 537 | than <filename class="directory">/usr</filename>, you need to update the
|
---|
[b7f3ec8b] | 538 | following configuration files so that <application>Qt4</application> is
|
---|
[c65ac49d] | 539 | correctly found by other packages and system processes.
|
---|
| 540 | </para>
|
---|
| 541 |
|
---|
| 542 | <para>
|
---|
| 543 | As the <systemitem class="username">root</systemitem> user, update
|
---|
| 544 | the <filename>/etc/ld.so.conf</filename> file and the dynamic linker's
|
---|
| 545 | run-time cache file:
|
---|
| 546 | </para>
|
---|
| 547 |
|
---|
| 548 | <screen role="root"><userinput>cat >> /etc/ld.so.conf << EOF
|
---|
| 549 | <literal># Begin Qt4 addition
|
---|
| 550 |
|
---|
| 551 | $QT4PREFIX/lib
|
---|
| 552 |
|
---|
| 553 | # End Qt4 addition</literal>
|
---|
| 554 | EOF
|
---|
| 555 |
|
---|
| 556 | ldconfig</userinput></screen>
|
---|
| 557 |
|
---|
| 558 | <indexterm zone="qt4 qt4-config">
|
---|
| 559 | <primary sortas="e-etc-ld.so.conf">/etc/ld.so.conf</primary>
|
---|
| 560 | </indexterm>
|
---|
| 561 |
|
---|
[7af92fe5] | 562 | <para>
|
---|
[c65ac49d] | 563 | If you have installed <xref linkend="qtchooser"/>, create
|
---|
| 564 | the <filename>/etc/profile.d/qt4.sh</filename> file by
|
---|
| 565 | running the following command as the
|
---|
| 566 | <systemitem class="username">root</systemitem> user:
|
---|
[7af92fe5] | 567 | </para>
|
---|
| 568 |
|
---|
[41ddd5f] | 569 | <screen role="root"><userinput>cat > /etc/profile.d/qt4.sh << EOF
|
---|
| 570 | <literal># Begin /etc/profile.d/qt4.sh
|
---|
[7af92fe5] | 571 |
|
---|
[c65ac49d] | 572 | pathappend $QT4PREFIX/lib/pkgconfig PKG_CONFIG_PATH
|
---|
[7af92fe5] | 573 |
|
---|
[41ddd5f] | 574 | # End /etc/profile.d/qt4.sh</literal>
|
---|
[7af92fe5] | 575 | EOF</userinput></screen>
|
---|
| 576 |
|
---|
[c65ac49d] | 577 | <para>
|
---|
| 578 | If you have not installed <xref linkend="qtchooser"/>,
|
---|
| 579 | create the <filename>/etc/profile.d/qt4.sh</filename>
|
---|
| 580 | file by running the following command as the
|
---|
| 581 | <systemitem class="username">root</systemitem> user:
|
---|
| 582 | </para>
|
---|
[54e9eea] | 583 |
|
---|
[41ddd5f] | 584 | <screen role="root"><userinput>cat > /etc/profile.d/qt4.sh << EOF
|
---|
| 585 | <literal># Begin /etc/profile.d/qt4.sh
|
---|
[c65ac49d] | 586 |
|
---|
| 587 | pathappend $QT4BINDIR PATH
|
---|
| 588 | pathappend $QT4PREFIX/lib/pkgconfig PKG_CONFIG_PATH
|
---|
| 589 |
|
---|
[41ddd5f] | 590 | # End /etc/profile.d/qt4.sh</literal>
|
---|
[54e9eea] | 591 | EOF</userinput></screen>
|
---|
| 592 |
|
---|
[c65ac49d] | 593 | <note>
|
---|
| 594 | <para>
|
---|
| 595 | If <xref linkend="qtchooser"/> is not installed and you
|
---|
| 596 | also have <application>Qt5</application> installed,
|
---|
| 597 | you will need to manually adjust the <envar>PATH</envar>
|
---|
| 598 | variable depending on which <application>Qt</application>
|
---|
| 599 | version is needed.
|
---|
| 600 | </para>
|
---|
| 601 | </note>
|
---|
[7af92fe5] | 602 |
|
---|
| 603 | </sect3>
|
---|
[c65ac49d] | 604 |
|
---|
[7af92fe5] | 605 | </sect2>
|
---|
| 606 |
|
---|
| 607 | <sect2 role="content">
|
---|
| 608 | <title>Contents</title>
|
---|
| 609 |
|
---|
| 610 | <segmentedlist>
|
---|
| 611 | <segtitle>Installed Programs</segtitle>
|
---|
| 612 | <segtitle>Installed Libraries</segtitle>
|
---|
| 613 | <segtitle>Installed Directories</segtitle>
|
---|
| 614 |
|
---|
| 615 | <seglistitem>
|
---|
| 616 | <seg>
|
---|
[ec7940be] | 617 | assistant, designer, lconvert, linguist,
|
---|
| 618 | lrelease, lupdate, moc, pixeltool,
|
---|
| 619 | qcollectiongenerator, qdbuscpp2xml, qdbus,
|
---|
| 620 | qdbusviewer, qdbusxml2cpp, qdoc3, qhelpconverter,
|
---|
| 621 | qhelpgenerator, qmake, qmlplugindump, qmlviewer,
|
---|
| 622 | qt3to4, qtconfig, qttracereplay, rcc, uic3,
|
---|
| 623 | uic, xmlpatterns, and xmlpatternsvalidator
|
---|
[7af92fe5] | 624 | </seg>
|
---|
| 625 | <seg>
|
---|
[18310d86] | 626 | libQtUiTools.a, libQt3Support.so, libQtCLucene.so, libQtCore.so,
|
---|
| 627 | libQtDBus.so, libQtDeclarative.so, libQtDesignerComponents.so,
|
---|
[8d4b121] | 628 | libQtDesigner.so, libQtGui.so, libQtHelp.so, libQtMultimedia.so,
|
---|
| 629 | libQtNetwork.so, libQtOpenGL.so, libQtScript.so, libQtScriptTools.so,
|
---|
| 630 | libQtSql.so, libQtSvg.so, libQtTest.so, libQtWebKit.so,
|
---|
[18310d86] | 631 | libQtXmlPatterns.so, and libQtXml.so, and several plugins under
|
---|
| 632 | /opt/qt4/imports and /opt/qt4/plugins
|
---|
[7af92fe5] | 633 | </seg>
|
---|
| 634 | <seg>
|
---|
[c65ac49d] | 635 | $QT4PREFIX/include/qt4,
|
---|
| 636 | $QT4PREFIX/lib/qt4,
|
---|
| 637 | $QT4PREFIX/share/doc/qt4, and
|
---|
| 638 | $QT4PREFIX/share/qt4
|
---|
[7af92fe5] | 639 | </seg>
|
---|
| 640 | </seglistitem>
|
---|
| 641 | </segmentedlist>
|
---|
| 642 |
|
---|
| 643 | <variablelist>
|
---|
| 644 | <bridgehead renderas="sect3">Short Descriptions</bridgehead>
|
---|
| 645 | <?dbfo list-presentation="list"?>
|
---|
| 646 | <?dbhtml list-presentation="table"?>
|
---|
| 647 |
|
---|
[8d4b121] | 648 | <varlistentry id="assistant-qt4">
|
---|
[ec7940be] | 649 | <term><command>assistant</command></term>
|
---|
[7af92fe5] | 650 | <listitem>
|
---|
| 651 | <para>
|
---|
| 652 | is a tool for presenting on-line documentation.
|
---|
| 653 | </para>
|
---|
[8d4b121] | 654 | <indexterm zone="qt4 assistant-qt4">
|
---|
[ec7940be] | 655 | <primary sortas="b-assistant-qt4">assistant</primary>
|
---|
[7af92fe5] | 656 | </indexterm>
|
---|
| 657 | </listitem>
|
---|
| 658 | </varlistentry>
|
---|
| 659 |
|
---|
[8d4b121] | 660 | <varlistentry id="designer-qt4">
|
---|
[ec7940be] | 661 | <term><command>designer</command></term>
|
---|
[7af92fe5] | 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>
|
---|
[8d4b121] | 669 | <indexterm zone="qt4 designer-qt4">
|
---|
[ec7940be] | 670 | <primary sortas="b-designer-qt4">designer</primary>
|
---|
[7af92fe5] | 671 | </indexterm>
|
---|
| 672 | </listitem>
|
---|
| 673 | </varlistentry>
|
---|
| 674 |
|
---|
[8d4b121] | 675 | <varlistentry id="linguist-qt4">
|
---|
[ec7940be] | 676 | <term><command>linguist</command></term>
|
---|
[7af92fe5] | 677 | <listitem>
|
---|
| 678 | <para>
|
---|
| 679 | provides support for translating applications into
|
---|
| 680 | local languages.
|
---|
| 681 | </para>
|
---|
[8d4b121] | 682 | <indexterm zone="qt4 linguist-qt4">
|
---|
[ec7940be] | 683 | <primary sortas="b-linguist-qt4">linguist</primary>
|
---|
[7af92fe5] | 684 | </indexterm>
|
---|
| 685 | </listitem>
|
---|
| 686 | </varlistentry>
|
---|
| 687 |
|
---|
[8d4b121] | 688 | <varlistentry id="lrelease-qt4">
|
---|
[ec7940be] | 689 | <term><command>lrelease</command></term>
|
---|
[7af92fe5] | 690 | <listitem>
|
---|
| 691 | <para>
|
---|
| 692 | is a simple command line tool. It reads a Qt project
|
---|
| 693 | file and produces message files used by the application.
|
---|
| 694 | </para>
|
---|
[8d4b121] | 695 | <indexterm zone="qt4 lrelease-qt4">
|
---|
[ec7940be] | 696 | <primary sortas="b-lrelease-qt4">lrelease</primary>
|
---|
[7af92fe5] | 697 | </indexterm>
|
---|
| 698 | </listitem>
|
---|
| 699 | </varlistentry>
|
---|
| 700 |
|
---|
[8d4b121] | 701 | <varlistentry id="lupdate-qt4">
|
---|
[ec7940be] | 702 | <term><command>lupdate</command></term>
|
---|
[7af92fe5] | 703 | <listitem>
|
---|
| 704 | <para>
|
---|
| 705 | reads a Qt project file, finds the translatable
|
---|
| 706 | strings in the specified source, header and Qt Designer
|
---|
| 707 | interface files, and produces or updates the translation
|
---|
| 708 | files listed in the project file.
|
---|
| 709 | </para>
|
---|
[8d4b121] | 710 | <indexterm zone="qt4 lupdate-qt4">
|
---|
[ec7940be] | 711 | <primary sortas="b-lupdate-qt4">lupdate</primary>
|
---|
[7af92fe5] | 712 | </indexterm>
|
---|
| 713 | </listitem>
|
---|
| 714 | </varlistentry>
|
---|
| 715 |
|
---|
[8d4b121] | 716 | <varlistentry id="moc-qt4">
|
---|
[ec7940be] | 717 | <term><command>moc</command></term>
|
---|
[7af92fe5] | 718 | <listitem>
|
---|
| 719 | <para>
|
---|
| 720 | generates Qt meta object support code.
|
---|
| 721 | </para>
|
---|
[8d4b121] | 722 | <indexterm zone="qt4 moc-qt4">
|
---|
[ec7940be] | 723 | <primary sortas="b-moc-qt4">moc</primary>
|
---|
[7af92fe5] | 724 | </indexterm>
|
---|
| 725 | </listitem>
|
---|
| 726 | </varlistentry>
|
---|
| 727 |
|
---|
[8d4b121] | 728 | <varlistentry id="pixeltool-qt4">
|
---|
[ec7940be] | 729 | <term><command>pixeltool</command></term>
|
---|
[7af92fe5] | 730 | <listitem>
|
---|
| 731 | <para>
|
---|
| 732 | is a desktop magnifier and as you move your mouse around
|
---|
| 733 | the screen it will show the magnified contents in its window.
|
---|
| 734 | </para>
|
---|
[8d4b121] | 735 | <indexterm zone="qt4 pixeltool-qt4">
|
---|
[ec7940be] | 736 | <primary sortas="b-pixeltool-qt4">pixeltool</primary>
|
---|
[7af92fe5] | 737 | </indexterm>
|
---|
| 738 | </listitem>
|
---|
| 739 | </varlistentry>
|
---|
| 740 |
|
---|
[8d4b121] | 741 | <varlistentry id="qmake-qt4">
|
---|
[ec7940be] | 742 | <term><command>qmake</command></term>
|
---|
[7af92fe5] | 743 | <listitem>
|
---|
| 744 | <para>
|
---|
| 745 | uses information stored in project files to
|
---|
| 746 | determine what should go in the makefiles it
|
---|
| 747 | generates.
|
---|
| 748 | </para>
|
---|
[8d4b121] | 749 | <indexterm zone="qt4 qmake-qt4">
|
---|
[ec7940be] | 750 | <primary sortas="b-qmake-qt4">qmake</primary>
|
---|
[7af92fe5] | 751 | </indexterm>
|
---|
| 752 | </listitem>
|
---|
| 753 | </varlistentry>
|
---|
| 754 |
|
---|
[8d4b121] | 755 | <varlistentry id="qt3to4-qt4">
|
---|
[ec7940be] | 756 | <term><command>qt3to4</command></term>
|
---|
[7af92fe5] | 757 | <listitem>
|
---|
| 758 | <para>
|
---|
| 759 | qt3to4 is a tool to help update Qt3 code to Qt4.
|
---|
| 760 | </para>
|
---|
[8d4b121] | 761 | <indexterm zone="qt4 qt3to4-qt4">
|
---|
[ec7940be] | 762 | <primary sortas="b-qt3to4-qt4">qt3to4</primary>
|
---|
[7af92fe5] | 763 | </indexterm>
|
---|
| 764 | </listitem>
|
---|
| 765 | </varlistentry>
|
---|
| 766 |
|
---|
[8d4b121] | 767 | <varlistentry id="qtconfig-qt4">
|
---|
[ec7940be] | 768 | <term><command>qtconfig</command></term>
|
---|
[7af92fe5] | 769 | <listitem>
|
---|
| 770 | <para>
|
---|
| 771 | is used to customize the appearance of Qt applications.
|
---|
| 772 | </para>
|
---|
[8d4b121] | 773 | <indexterm zone="qt4 qtconfig-qt4">
|
---|
[ec7940be] | 774 | <primary sortas="b-qtconfig-qt4">qtconfig</primary>
|
---|
[7af92fe5] | 775 | </indexterm>
|
---|
| 776 | </listitem>
|
---|
| 777 | </varlistentry>
|
---|
| 778 |
|
---|
[8d4b121] | 779 | <varlistentry id="rcc-qt4">
|
---|
[ec7940be] | 780 | <term><command>rcc</command></term>
|
---|
[7af92fe5] | 781 | <listitem>
|
---|
| 782 | <para>
|
---|
| 783 | is a resource compiler used in conjunction with designer.
|
---|
| 784 | </para>
|
---|
[8d4b121] | 785 | <indexterm zone="qt4 rcc-qt4">
|
---|
[ec7940be] | 786 | <primary sortas="b-rcc-qt4">rcc</primary>
|
---|
[7af92fe5] | 787 | </indexterm>
|
---|
| 788 | </listitem>
|
---|
| 789 | </varlistentry>
|
---|
| 790 |
|
---|
[8d4b121] | 791 | <varlistentry id="uic-qt4">
|
---|
[ec7940be] | 792 | <term><command>uic</command></term>
|
---|
[7af92fe5] | 793 | <listitem>
|
---|
| 794 | <para>
|
---|
| 795 | is a Qt user interface compiler.
|
---|
| 796 | </para>
|
---|
[8d4b121] | 797 | <indexterm zone="qt4 uic-qt4">
|
---|
[ec7940be] | 798 | <primary sortas="b-uic-qt4">uic</primary>
|
---|
[7af92fe5] | 799 | </indexterm>
|
---|
| 800 | </listitem>
|
---|
| 801 | </varlistentry>
|
---|
| 802 |
|
---|
[8d4b121] | 803 | <varlistentry id="uic3-qt4">
|
---|
[ec7940be] | 804 | <term><command>uic3</command></term>
|
---|
[7af92fe5] | 805 | <listitem>
|
---|
| 806 | <para>
|
---|
| 807 | is a tool to generate Qt4 code out of
|
---|
| 808 | user interface files generated by the Qt3
|
---|
| 809 | version of designer.
|
---|
| 810 | </para>
|
---|
[8d4b121] | 811 | <indexterm zone="qt4 uic3-qt4">
|
---|
[ec7940be] | 812 | <primary sortas="b-uic3-qt4">uic3</primary>
|
---|
[7af92fe5] | 813 | </indexterm>
|
---|
| 814 | </listitem>
|
---|
| 815 | </varlistentry>
|
---|
| 816 |
|
---|
| 817 | </variablelist>
|
---|
| 818 |
|
---|
| 819 | </sect2>
|
---|
| 820 |
|
---|
| 821 | </sect1>
|
---|