[ec7940be] | 1 | <?xml version="1.0" encoding="ISO-8859-1"?>
|
---|
| 2 | <!DOCTYPE note PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
|
---|
[f3429309] | 3 | "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
|
---|
[ec7940be] | 4 | <!ENTITY % general-entities SYSTEM "../general.ent">
|
---|
| 5 | %general-entities;
|
---|
| 6 | ]>
|
---|
| 7 |
|
---|
| 8 | <sect2>
|
---|
| 9 | <title>Qt Installation Alternatives</title>
|
---|
| 10 |
|
---|
[f3429309] | 11 | <para>The installation of <application>Qt</application> presents
|
---|
[ec7940be] | 12 | several challenges and choices. Complicating the Qt installation is the fact
|
---|
[f3429309] | 13 | that there are two versions, <application>Qt4</application> and
|
---|
[ec7940be] | 14 | <application>Qt5</application>, that have executable programs with
|
---|
| 15 | identical names. If both packages are installed on one system,
|
---|
| 16 | the only methods to manage which set of programs is used is to
|
---|
| 17 | either control the users' <envar>PATH</envar> or to rename files
|
---|
| 18 | either directly or via symbolic links. Both packages cannot
|
---|
| 19 | be installed in the same directory.
|
---|
| 20 | </para>
|
---|
| 21 |
|
---|
[f3429309] | 22 | <para>If you are only going to install one of the Qt versions,
|
---|
| 23 | the choice of installation methods is easier. You can either
|
---|
[ec7940be] | 24 | install the components in the several directories of the <filename
|
---|
[f3429309] | 25 | class='directory'>/usr</filename> hierarchy or install the
|
---|
[0dd2bc6] | 26 | entire package in a separate directory of your choice. <!-- We
|
---|
[f3429309] | 27 | refer to these options below as "Method 1: Installing in /usr"
|
---|
[0dd2bc6] | 28 | and "Method 2: Installing in /opt". --></para>
|
---|
[ec7940be] | 29 |
|
---|
| 30 | <para>If both versions of Qt are to be installed, one or both versions need
|
---|
| 31 | to be installed in a separate directory. For the purposes here we use the
|
---|
| 32 | <filename class='directory'>/opt</filename> directory. The selection of
|
---|
| 33 | which version is being used by individual users on a system is controlled
|
---|
| 34 | by the <envar>PATH</envar> variable. Other systems can be designed, but
|
---|
| 35 | the BLFS editors find the <envar>PATH</envar> method easiest.</para>
|
---|
| 36 |
|
---|
| 37 | <para> The advantage of installing in <filename
|
---|
| 38 | class='directory'>/usr</filename> is that no updates to the
|
---|
| 39 | <filename>/etc/ld.so.conf</filename> or
|
---|
| 40 | <filename>/etc/man_db.conf</filename> files are required. The package files
|
---|
| 41 | are distributed within several subdirectories of the <filename
|
---|
| 42 | class='directory'>/usr</filename> hierarchy. This is the method that most
|
---|
| 43 | commercial distributions use. The disadvantage for BLFS users is that this
|
---|
| 44 | Qt instance cannot be upgraded while it is in use. For instance, it cannot
|
---|
| 45 | be upgraded from a running KDE environment. It also precludes having
|
---|
[f3429309] | 46 | multiple versions of Qt on your system and does not allow reverting to
|
---|
[ec7940be] | 47 | an existing, known working instance of Qt.</para>
|
---|
| 48 |
|
---|
| 49 | <para> The advantage of installing <application>Qt</application> in a
|
---|
[0dd2bc6] | 50 | custom directory such as <filename
|
---|
| 51 | class='directory'>/opt/qt-&qt4-version;</filename> or <filename
|
---|
| 52 | class='directory'>/opt/qt-&qt5-version;</filename> is that it keeps all
|
---|
| 53 | the package files consolidated in a dedicated directory hierarchy. By using
|
---|
[ec7940be] | 54 | this method, an update can be made without overwriting a previous
|
---|
| 55 | installation and users can easily revert to a previous version by changing
|
---|
| 56 | one symbolic link or merely changing the PATH variable. It also allows a
|
---|
| 57 | developer to maintain multiple versions of <application>Qt4</application>
|
---|
| 58 | or <application>Qt5</application> for testing. </para>
|
---|
| 59 |
|
---|
| 60 | </sect2>
|
---|