mirror of
https://github.com/Zeckmathederg/glfs.git
synced 2025-01-23 22:42:14 +08:00
Rewrite Qt pages
Add corrections for some paths (e.g. man pages) Tags git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@12783 af4574ff-66df-0310-9fd7-8a98e5e911e0
This commit is contained in:
parent
014d750fd0
commit
ec7940be5b
@ -1,12 +1,12 @@
|
||||
<!-- $LastChangedBy$ $Date$ -->
|
||||
|
||||
<!ENTITY day "23"> <!-- Always 2 digits -->
|
||||
<!ENTITY day "25"> <!-- Always 2 digits -->
|
||||
<!ENTITY month "02"> <!-- Always 2 digits -->
|
||||
<!ENTITY year "2014">
|
||||
<!ENTITY copyrightdate "2001-&year;">
|
||||
<!ENTITY copyholder "The BLFS Development Team">
|
||||
<!ENTITY version "&year;-&month;-&day;">
|
||||
<!ENTITY releasedate "February 23rd, &year;">
|
||||
<!ENTITY releasedate "February 25th, &year;">
|
||||
<!ENTITY pubdate "&year;-&month;-&day;"> <!-- metadata req. by TLDP -->
|
||||
<!ENTITY blfs-version "svn"> <!-- svn|[release #] -->
|
||||
<!ENTITY lfs-version "development"> <!-- version|testing|unstable|development] -->
|
||||
|
@ -33,7 +33,6 @@ $Date$
|
||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="iso-codes.xml"/>
|
||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="lsof.xml"/>
|
||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="pinentry.xml"/>
|
||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="qtchooser.xml"/>
|
||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="rarian.xml"/>
|
||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="rep-gtk.xml"/>
|
||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="screen.xml"/>
|
||||
|
@ -98,15 +98,24 @@
|
||||
commands:
|
||||
</para>
|
||||
|
||||
<screen><userinput>./configure --prefix=/usr \
|
||||
--disable-static \
|
||||
--docdir=/usr/share/doc/guile-&guile-version; &&
|
||||
<screen><userinput>./configure --prefix=/usr --disable-static &&
|
||||
make &&
|
||||
make html &&
|
||||
|
||||
makeinfo --plaintext -o doc/r5rs/r5rs.txt doc/r5rs/r5rs.texi &&
|
||||
makeinfo --plaintext -o doc/ref/guile.txt doc/ref/guile.texi</userinput></screen>
|
||||
|
||||
<para>
|
||||
If you have <xref linkend="texlive"/> installed and wish to build alternate
|
||||
formats (PDF and postscript) of the documentation, issue the following
|
||||
commands:
|
||||
</para>
|
||||
|
||||
<screen><userinput>for DIRNAME in r5rs ref; do
|
||||
make -k -C doc/${DIRNAME} pdf ps
|
||||
done &&
|
||||
unset DIRNAME</userinput></screen>
|
||||
|
||||
<para>
|
||||
To test the results, issue: <command>make check</command>.
|
||||
</para>
|
||||
@ -115,21 +124,37 @@ makeinfo --plaintext -o doc/ref/guile.txt doc/ref/guile.texi</userinput></screen
|
||||
Now, as the <systemitem class="username">root</systemitem> user:
|
||||
</para>
|
||||
|
||||
<screen role="root"><userinput>make install &&
|
||||
make install-html &&
|
||||
<screen role="root"><userinput>make install &&
|
||||
|
||||
mv /usr/share/doc/guile-&guile-version;/{guile.html,ref} &&
|
||||
mv /usr/share/doc/guile-&guile-version;/r5rs{.html,} &&
|
||||
find examples -name "Makefile*" -delete &&
|
||||
install -v -dm755 /usr/share/doc/guile-&guile-version; &&
|
||||
cp -vR examples /usr/share/doc/guile-&guile-version; &&
|
||||
|
||||
find examples -name "Makefile*" -exec rm {} \; &&
|
||||
cp -vR examples /usr/share/doc/guile-&guile-version; &&
|
||||
|
||||
for DIRNAME in r5rs ref
|
||||
do
|
||||
for DIRNAME in r5rs ref; do
|
||||
install -v -dm755 /usr/share/doc/guile-&guile-version;/${DIRNAME} &&
|
||||
|
||||
install -v -m644 doc/${DIRNAME}/*.txt \
|
||||
/usr/share/doc/guile-&guile-version;/${DIRNAME} &&
|
||||
|
||||
if [ -d doc/${DIRNAME}/${DIRNAME}.html ]; then
|
||||
cp -Rv doc/${DIRNAME}/${DIRNAME}.html \
|
||||
/usr/share/doc/guile-&guile-version;/${DIRNAME}
|
||||
done &&
|
||||
unset DIRNAME</userinput></screen>
|
||||
fi
|
||||
done
|
||||
|
||||
cp -vR doc/ref/guile.html /usr/share/doc/guile-&guile-version;/ref</userinput></screen>
|
||||
|
||||
<para>
|
||||
If you built the alternate formats of the documentation, install them
|
||||
using the following commands issued by the
|
||||
<systemitem class="username">root</systemitem> user:
|
||||
</para>
|
||||
|
||||
<screen role="root"><userinput>for DIRNAME in r5rs ref
|
||||
do
|
||||
install -v -m644 doc/${DIRNAME}/*.{pdf,ps,dvi} \
|
||||
/usr/share/doc/guile-&guile-version;/${DIRNAME}
|
||||
done</userinput></screen>
|
||||
|
||||
</sect2>
|
||||
|
||||
|
@ -116,7 +116,7 @@ make</userinput></screen>
|
||||
Now, as the <systemitem class="username">root</systemitem> user:
|
||||
</para>
|
||||
|
||||
<screen role="root"><userinput>make install</userinput></screen>
|
||||
<screen role="root"><userinput>make profiledir=/etc/bash_completion.d install</userinput></screen>
|
||||
|
||||
</sect2>
|
||||
|
||||
|
@ -32,7 +32,7 @@
|
||||
<para>This package provides a <application>Phonon</application> backend which
|
||||
utilizes the <application>GStreamer</application> media framework.</para>
|
||||
|
||||
&lfs74_checked;
|
||||
&lfs75_checked;
|
||||
|
||||
<bridgehead renderas="sect3">Package Information</bridgehead>
|
||||
<itemizedlist spacing="compact">
|
||||
|
@ -38,7 +38,7 @@
|
||||
additional configuration changes. Best practice is to add those to your
|
||||
system or personal profile:</para>
|
||||
|
||||
<screen><userinput>cat > /etc/profile.d/kde.sh << EOF
|
||||
<screen><userinput>cat > /etc/profile.d/kde.sh << 'EOF'
|
||||
<literal># Begin /etc/profile.d/kde.sh
|
||||
|
||||
&kde-dir-var;=/opt/kde
|
||||
|
@ -36,7 +36,7 @@
|
||||
This is useful for programs and applications needing to decode MPEG-2 and
|
||||
MPEG-1 video streams.</para>
|
||||
|
||||
&lfs74_checked;
|
||||
&lfs75_checked;
|
||||
|
||||
<bridgehead renderas="sect3">Package Information</bridgehead>
|
||||
<itemizedlist spacing="compact">
|
||||
|
@ -11,7 +11,7 @@
|
||||
<!ENTITY glib-networking-md5sum "99293f58a8256214b2b9b331afeb1aee">
|
||||
<!ENTITY glib-networking-size "356 KB">
|
||||
<!ENTITY glib-networking-buildsize "8.5 MB">
|
||||
<!ENTITY glib-networking-time "0.15 SBU">
|
||||
<!ENTITY glib-networking-time "0.1 SBU">
|
||||
]>
|
||||
|
||||
<sect1 id="glib-networking" xreflabel="glib-networking-&glib-networking-version;">
|
||||
|
@ -11,7 +11,7 @@
|
||||
<!ENTITY libsoup-md5sum "92aa3667357157e8f3489bcca287f2fa">
|
||||
<!ENTITY libsoup-size "732 KB">
|
||||
<!ENTITY libsoup-buildsize "27 MB (additional 2 MB to run the test suite)">
|
||||
<!ENTITY libsoup-time "0.55 SBU (additional 0.16 SBU to run the test suite)">
|
||||
<!ENTITY libsoup-time "0.5 SBU (additional 0.2 SBU to run the test suite)">
|
||||
]>
|
||||
|
||||
<sect1 id="libsoup" xreflabel="libsoup-&libsoup-version;">
|
||||
@ -35,7 +35,7 @@
|
||||
The <application>libsoup</application> is HTTP client/server library for
|
||||
<application>GNOME</application>. It uses GObject and the GLib main loop
|
||||
to integrate with <application>GNOME</application> applications and
|
||||
it also has asynchronous API for use in threaded applications.
|
||||
it also has an asynchronous API for use in threaded applications.
|
||||
</para>
|
||||
|
||||
&lfs75_checked;
|
||||
|
@ -128,6 +128,7 @@ pathappend () {
|
||||
export $PATHVARIABLE="${!PATHVARIABLE:+${!PATHVARIABLE}:}$1"
|
||||
}
|
||||
|
||||
export -f pathremove pathprepend pathappend
|
||||
|
||||
# Set the initial path
|
||||
export PATH=/bin:/usr/bin
|
||||
@ -157,9 +158,6 @@ for script in /etc/profile.d/*.sh ; do
|
||||
fi
|
||||
done
|
||||
|
||||
# Now to clean up
|
||||
unset pathremove pathprepend pathappend
|
||||
|
||||
# End /etc/profile</literal>
|
||||
EOF</userinput></screen>
|
||||
|
||||
|
414
x/lib/qt4.xml
414
x/lib/qt4.xml
@ -105,10 +105,8 @@
|
||||
<xref linkend="gst-plugins-base"/> (For QtWebKit HTML5 Video),
|
||||
<xref linkend="mariadb"/> or <xref linkend="mysql"/>,
|
||||
<xref linkend="postgresql"/>,
|
||||
<xref linkend="pulseaudio"/>,
|
||||
<xref linkend="unixodbc"/>, and
|
||||
<xref linkend="qtchooser"/> (runtime, if also installing Qt5 and
|
||||
installing in /usr)
|
||||
<xref linkend="pulseaudio"/>, and
|
||||
<xref linkend="unixodbc"/>
|
||||
</para>
|
||||
|
||||
<para condition="html" role="usernotes">User Notes:
|
||||
@ -116,63 +114,11 @@
|
||||
</para>
|
||||
</sect2>
|
||||
|
||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="../../xincludes/qt-alternatives.xml"/>
|
||||
|
||||
<sect2 role="installation">
|
||||
<title>Installation of Qt</title>
|
||||
|
||||
<para>
|
||||
There are several ways to install a complicated package such as
|
||||
<application>Qt</application>. The files are not completely position
|
||||
independent. Installation procedures execute the program
|
||||
<command>pkg-config</command> to determine the location of package
|
||||
executables, libraries, headers, and other files. For
|
||||
<application>Qt</application>, <command>pkg-config</command> will look
|
||||
for the appropriate <filename>lib/pkgconfig/Qt*.pc</filename> files
|
||||
which must be modified if relocating the package. These files are set up
|
||||
correctly by the build process.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
The default installation places the files in <filename
|
||||
class='directory'>/usr/local/qt/</filename>. Many commercial
|
||||
distributions place the files in the system's <filename
|
||||
class='directory'>/usr</filename> hierarchy. The package can also be
|
||||
installed in an arbitrary directory.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
The advantage of installing in <filename
|
||||
class='directory'>/usr</filename> is that no updates to the
|
||||
<filename>/etc/ld.so.conf</filename> or
|
||||
<filename>/etc/man_db.conf</filename> files are required. The package
|
||||
files are distributed within several subdirectories of the <filename
|
||||
class='directory'>/usr</filename> hierarchy. This is the method that
|
||||
most commercial distributions use. It is also supported by the
|
||||
optional <application>qtchooser</application> application.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
The disadvantage of installing in <filename
|
||||
class='directory'>/usr</filename> is that the executable filenames
|
||||
for <application>Qt4</application> and <application>Qt5</application>
|
||||
conflict if both packages are installed in the
|
||||
same directory. The instructions below give a workaround for
|
||||
this problem using the helper program <xref linkend='qtchooser'/>.
|
||||
This requires renaming the Qt executables with a version suffix.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
The advantage of installing <application>Qt4</application> in a custom
|
||||
directory such as <filename
|
||||
class='directory'>/opt/qt-&qt4-version;</filename> is that it keeps all
|
||||
the package files consolidated in a dedicated directory hierarchy. By
|
||||
using this method, an update can be made without overwriting a previous
|
||||
installation and users can easily revert to a previous version by
|
||||
changing one symbolic link or merely changing the PATH variable. It
|
||||
also allows a developer to maintain multiple versions of
|
||||
<application>Qt4</application> or <application>Qt5</application>
|
||||
for testing.
|
||||
</para>
|
||||
|
||||
<caution>
|
||||
<para>
|
||||
If you did not install some of the recommended dependencies, examine
|
||||
@ -200,26 +146,25 @@
|
||||
</para>
|
||||
</note>
|
||||
|
||||
<!-- ==== Method 1 ====== -->
|
||||
<bridgehead renderas="sect3">Method 1: Installing in /usr</bridgehead>
|
||||
|
||||
<para>
|
||||
Install <application>Qt4</application> by running the
|
||||
following commands:
|
||||
Install <application>Qt4</application> into the <filename
|
||||
class='directory'>/usr</filename> hierarchy by running the following
|
||||
commands:
|
||||
</para>
|
||||
|
||||
<note><para>
|
||||
If <emphasis>not</emphasis> also installing <application>Qt5</application>
|
||||
into the /usr directory, change the entry for -bindir below to /usr/bin.
|
||||
</para></note>
|
||||
<screen><userinput>export QTLINK=/usr
|
||||
|
||||
|
||||
<screen><userinput>sed -i -e "/#if/d" -e "/#error/d" -e "/#endif/d" \
|
||||
sed -i -e "/#if/d" -e "/#error/d" -e "/#endif/d" \
|
||||
config.tests/unix/libmng/libmng.cpp &&
|
||||
|
||||
sed -i '/CONFIG -/ a\isEmpty(OUTPUT_DIR): OUTPUT_DIR = ../..' \
|
||||
src/3rdparty/webkit/Source/WebKit2/DerivedSources.pro &&
|
||||
|
||||
./configure -prefix /usr \
|
||||
-bindir /usr/lib/qt4/bin \
|
||||
-bindir /usr/bin \
|
||||
-plugindir /usr/lib/qt4/plugins \
|
||||
-importdir /usr/lib/qt4/imports \
|
||||
-headerdir /usr/include/qt4 \
|
||||
@ -257,22 +202,10 @@ make</userinput></screen>
|
||||
|
||||
<screen><userinput>find . -name "*.pc" -exec perl -pi -e "s, -L$PWD/?\S+,,g" {} \;</userinput></screen>
|
||||
|
||||
<para>
|
||||
Now, as the <systemitem class="username">root</systemitem> user:
|
||||
</para>
|
||||
<para>Now as the <systemitem class="username">root</systemitem> user:</para>
|
||||
|
||||
<screen role="root"><userinput>make install &&
|
||||
rm -rf /usr/tests &&
|
||||
install -v -Dm644 src/gui/dialogs/images/qtlogo-64.png \
|
||||
/usr/share/pixmaps/qt4logo.png &&
|
||||
install -v -Dm644 tools/assistant/tools/assistant/images/assistant-128.png \
|
||||
/usr/share/pixmaps/assistant-qt4.png &&
|
||||
install -v -Dm644 tools/designer/src/designer/images/designer.png \
|
||||
/usr/share/pixmaps/designer-qt4.png &&
|
||||
install -v -Dm644 tools/linguist/linguist/images/icons/linguist-128-32.png \
|
||||
/usr/share/pixmaps/linguist-qt4.png &&
|
||||
install -v -Dm644 tools/qdbus/qdbusviewer/images/qdbusviewer-128.png \
|
||||
/usr/share/pixmaps/qdbusviewer-qt4.png</userinput></screen>
|
||||
rm -rf /usr/tests</userinput></screen>
|
||||
|
||||
<para>
|
||||
Remove references to the build directory from installed files by
|
||||
@ -282,51 +215,32 @@ install -v -Dm644 tools/qdbus/qdbusviewer/images/qdbusviewer-128.png \
|
||||
|
||||
<screen role="root"><userinput>for file in 3Support CLucene Core DBus Declarative DesignerComponents \
|
||||
Designer Gui Help Multimedia Network OpenGL Script \
|
||||
ScriptTools Sql Svg Test UiTools WebKit XmlPatterns Xml phonon
|
||||
do
|
||||
[ -e /usr/lib/libQt${file}.prl ] && sed -i -e '/^QMAKE_PRL_BUILD_DIR/d;s/\(QMAKE_PRL_LIBS =\).*/\1/' \
|
||||
/usr/lib/libQt${file}.prl
|
||||
ScriptTools Sql Svg Test UiTools WebKit XmlPatterns Xml phonon; do
|
||||
|
||||
[ -e /usr/lib/libQt${file}.prl ] &&
|
||||
sed -r '/^QMAKE_PRL_BUILD_DIR/d;s/(QMAKE_PRL_LIBS =).*/\1/' \
|
||||
-i /usr/lib/libQt${file}.prl
|
||||
done
|
||||
unset file</userinput></screen>
|
||||
|
||||
<para>
|
||||
If also installing Qt5 into /usr,
|
||||
symlink the <application>Qt4</application> executables into
|
||||
<filename class="directory">/usr/bin</filename> by running the
|
||||
following commands as the
|
||||
<systemitem class="username">root</systemitem> user:
|
||||
</para>
|
||||
|
||||
<screen role="root"><userinput>for file in /usr/lib/qt4/bin/*
|
||||
do
|
||||
ln -sfv ../lib/qt4/bin/$(basename $file) /usr/bin/$(basename $file)-qt4
|
||||
done</userinput></screen>
|
||||
|
||||
<!-- ==== Method 2 ====== -->
|
||||
<bridgehead renderas="sect3">Method 2: Installing in /opt/qt-&qt4-version;</bridgehead>
|
||||
|
||||
<para>
|
||||
This section provides an alternate way to install Qt4 by installing
|
||||
almost all of the files in the <filename class="directory">/opt</filename>
|
||||
directory. This allows management of all Qt4 related files in one unit.
|
||||
For instance, a new version of Qt4 can be installed without over-writing
|
||||
the existing installation and entire Qt4 instances can be easily removed.
|
||||
However, it has the disadvantage of needing some extra configuration.
|
||||
</para>
|
||||
|
||||
|
||||
<para>
|
||||
Install <application>Qt</application> in /opt/qt-&qt4-version;
|
||||
by running the following commands:
|
||||
This section provides for installing Qt4 almost all of the files in the
|
||||
<filename class="directory">/opt</filename> directory.
|
||||
</para>
|
||||
|
||||
<screen><userinput>sed -i -e "/#if/d" -e "/#error/d" -e "/#endif/d" \
|
||||
<screen><userinput>export QTDIR=/opt/qt-&qt4-version; &&
|
||||
export QTLINK=/opt/qt &&
|
||||
|
||||
sed -i -e "/#if/d" -e "/#error/d" -e "/#endif/d" \
|
||||
config.tests/unix/libmng/libmng.cpp &&
|
||||
|
||||
sed -i '/CONFIG -/ a\isEmpty(OUTPUT_DIR): OUTPUT_DIR = ../..' \
|
||||
src/3rdparty/webkit/Source/WebKit2/DerivedSources.pro &&
|
||||
|
||||
export QTDIR=/opt/qt-&qt4-version;
|
||||
|
||||
./configure -prefix $QTDIR \
|
||||
./configure -prefix $QTDIR \
|
||||
-sysconfdir /etc/xdg \
|
||||
-confirm-license \
|
||||
-opensource \
|
||||
@ -349,19 +263,8 @@ make</userinput></screen>
|
||||
Now, as the <systemitem class="username">root</systemitem> user:
|
||||
</para>
|
||||
|
||||
<screen role="root"><userinput>make install &&
|
||||
|
||||
install -v -dm755 /usr/share/pixmaps/ &&
|
||||
install -v -Dm644 src/gui/dialogs/images/qtlogo-64.png \
|
||||
/usr/share/pixmaps/qt4logo.png &&
|
||||
install -v -Dm644 tools/assistant/tools/assistant/images/assistant-128.png \
|
||||
/usr/share/pixmaps/assistant-qt4.png &&
|
||||
install -v -Dm644 tools/designer/src/designer/images/designer.png \
|
||||
/usr/share/pixmaps/designer-qt4.png &&
|
||||
install -v -Dm644 tools/linguist/linguist/images/icons/linguist-128-32.png \
|
||||
/usr/share/pixmaps/linguist-qt4.png &&
|
||||
install -v -Dm644 tools/qdbus/qdbusviewer/images/qdbusviewer-128.png \
|
||||
/usr/share/pixmaps/qdbusviewer-qt4.png</userinput></screen>
|
||||
<screen role="root"><userinput>make install
|
||||
ln -svfn $QTDIR /opt/qt</userinput></screen>
|
||||
|
||||
<para>
|
||||
Remove references to the build directory from installed files by
|
||||
@ -370,25 +273,104 @@ install -v -Dm644 tools/qdbus/qdbusviewer/images/qdbusviewer-128.png \
|
||||
</para>
|
||||
|
||||
<screen role="root"><userinput>for file in `basename -a -s .prl $QTDIR/lib/lib*.prl`; do
|
||||
sed -i -e '/^QMAKE_PRL_BUILD_DIR/d;s/\(QMAKE_PRL_LIBS =\).*/\1/' \
|
||||
$QTDIR/lib/${file}.prl
|
||||
perl -pi -e "s, -L$PWD/?\S+,,g" $QTDIR/lib/pkgconfig/${file##lib}.pc
|
||||
sed -r '/^QMAKE_PRL_BUILD_DIR/d' \
|
||||
-r 's/(QMAKE_PRL_LIBS =).*/\1/' \
|
||||
-i $QTDIR/lib/${file}.prl
|
||||
|
||||
perl -pi -e "s, -L$PWD/?\S+,,g" $QTDIR/lib/pkgconfig/${file##lib}.pc
|
||||
done
|
||||
|
||||
unset file</userinput></screen>
|
||||
|
||||
<para>
|
||||
Symlink the <application>Qt4</application> executables into
|
||||
<filename class="directory">/usr/bin</filename> by running the
|
||||
following commands as the
|
||||
<systemitem class="username">root</systemitem> user:
|
||||
</para>
|
||||
<!-- ==== Common ====== -->
|
||||
<bridgehead renderas="sect3">Continuing for Both Methods</bridgehead>
|
||||
|
||||
<screen role="root"><userinput>ln -svf $QTDIR /opt/qt &&
|
||||
<para>
|
||||
For all methods, install images and create the menu entries
|
||||
for installed applications. Be sure that the <envar>QTLINK</envar>
|
||||
variable is defined in root's environment and
|
||||
as the <systemitem class="username">root</systemitem> user:
|
||||
</para>
|
||||
|
||||
for file in /opt/qt/bin/*; do
|
||||
ln -sfvn $file /usr/bin/$(basename $file)-qt4
|
||||
done</userinput></screen>
|
||||
<screen role="root"><userinput>install -v -Dm644 src/gui/dialogs/images/qtlogo-64.png \
|
||||
/usr/share/pixmaps/qt4logo.png &&
|
||||
|
||||
install -v -Dm644 tools/assistant/tools/assistant/images/assistant-128.png \
|
||||
/usr/share/pixmaps/assistant-qt4.png &&
|
||||
|
||||
install -v -Dm644 tools/designer/src/designer/images/designer.png \
|
||||
/usr/share/pixmaps/designer-qt4.png &&
|
||||
|
||||
install -v -Dm644 tools/linguist/linguist/images/icons/linguist-128-32.png \
|
||||
/usr/share/pixmaps/linguist-qt4.png &&
|
||||
|
||||
install -v -Dm644 tools/qdbus/qdbusviewer/images/qdbusviewer-128.png \
|
||||
/usr/share/pixmaps/qdbusviewer-qt4.png &&
|
||||
|
||||
install -dm755 /usr/share/applications &&
|
||||
|
||||
cat > /usr/share/applications/assistant-qt4.desktop << EOF
|
||||
<literal>[Desktop Entry]
|
||||
Name=Qt4 Assistant
|
||||
Comment=Shows Qt4 documentation and examples
|
||||
Exec=$QTLINK/bin/assistant
|
||||
Icon=assistant-qt4.png
|
||||
Terminal=false
|
||||
Encoding=UTF-8
|
||||
Type=Application
|
||||
Categories=Qt;Development;Documentation;</literal>
|
||||
EOF
|
||||
|
||||
cat > /usr/share/applications/designer-qt4.desktop << EOF
|
||||
<literal>[Desktop Entry]
|
||||
Name=Qt4 Designer
|
||||
Comment=Design GUIs for Qt4 applications
|
||||
Exec=$QTLINK/bin/designer
|
||||
Icon=designer-qt4.png
|
||||
MimeType=application/x-designer;
|
||||
Terminal=false
|
||||
Encoding=UTF-8
|
||||
Type=Application
|
||||
Categories=Qt;Development;</literal>
|
||||
EOF
|
||||
|
||||
cat > /usr/share/applications/linguist-qt4.desktop << EOF
|
||||
<literal>[Desktop Entry]
|
||||
Name=Qt4 Linguist
|
||||
Comment=Add translations to Qt4 applications
|
||||
Exec=$QTLINK/bin/linguist
|
||||
Icon=linguist-qt4.png
|
||||
MimeType=text/vnd.trolltech.linguist;application/x-linguist;
|
||||
Terminal=false
|
||||
Encoding=UTF-8
|
||||
Type=Application
|
||||
Categories=Qt;Development;</literal>
|
||||
EOF
|
||||
|
||||
cat > /usr/share/applications/qdbusviewer-qt4.desktop << EOF
|
||||
<literal>[Desktop Entry]
|
||||
Name=Qt4 QDbusViewer
|
||||
GenericName=D-Bus Debugger
|
||||
Comment=Debug D-Bus applications
|
||||
Exec=$QTLINK/bin/qdbusviewer
|
||||
Icon=qdbusviewer-qt4.png
|
||||
Terminal=false
|
||||
Encoding=UTF-8
|
||||
Type=Application
|
||||
Categories=Qt;Development;Debugger;</literal>
|
||||
EOF
|
||||
|
||||
cat > /usr/share/applications/qtconfig-qt4.desktop << EOF
|
||||
<literal>[Desktop Entry]
|
||||
Name=Qt4 Config
|
||||
Comment=Configure Qt4 behavior, styles, fonts
|
||||
Exec=$QTLINK/bin/qtconfig-qt4
|
||||
Icon=qt4logo.png
|
||||
Terminal=false
|
||||
Encoding=UTF-8
|
||||
Type=Application
|
||||
Categories=Qt;Settings;</literal>
|
||||
EOF</userinput></screen>
|
||||
|
||||
</sect2>
|
||||
|
||||
@ -398,7 +380,7 @@ done</userinput></screen>
|
||||
<para>
|
||||
<command>sed -i ...</command>: First command fixes detection of
|
||||
<application>libmng</application> 2.0 and second one prevents configure
|
||||
script to write in root directory if building as privileged user.
|
||||
script from writing to the root directory if building as privileged user.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
@ -419,7 +401,7 @@ done</userinput></screen>
|
||||
<para>
|
||||
<parameter>-nomake examples -nomake demos</parameter>:
|
||||
These switches disable building programs that are only of
|
||||
interest to a <application>Qt</application> developer.
|
||||
interest to a developer using <application>Qt</application>.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
@ -483,7 +465,6 @@ done</userinput></screen>
|
||||
<literal># Begin /etc/profile.d/qt.sh
|
||||
|
||||
QTDIR=/usr
|
||||
|
||||
export QTDIR
|
||||
|
||||
# End /etc/profile.d/qt.sh</literal>
|
||||
@ -532,78 +513,11 @@ export QTDIR
|
||||
# End /etc/profile.d/qt.sh</literal>
|
||||
EOF</userinput></screen>
|
||||
|
||||
<para>
|
||||
For all methods, create the menu entries for installed applications.
|
||||
As the <systemitem class="username">root</systemitem> user:
|
||||
</para>
|
||||
|
||||
<screen role="root"><userinput>install -dm755 /usr/share/applications
|
||||
|
||||
cat > /usr/share/applications/qtconfig-qt4.desktop << "EOF"
|
||||
<literal>[Desktop Entry]
|
||||
Name=Qt4 Config
|
||||
Comment=Configure Qt4 behavior, styles, fonts
|
||||
Exec=qtconfig-qt4
|
||||
Icon=qt4logo
|
||||
Terminal=false
|
||||
Encoding=UTF-8
|
||||
Type=Application
|
||||
Categories=Qt;Settings;</literal>
|
||||
EOF
|
||||
|
||||
cat > /usr/share/applications/assistant-qt4.desktop << "EOF"
|
||||
<literal>[Desktop Entry]
|
||||
Name=Qt4 Assistant
|
||||
Comment=Shows Qt4 documentation and examples
|
||||
Exec=assistant-qt4
|
||||
Icon=assistant-qt4
|
||||
Terminal=false
|
||||
Encoding=UTF-8
|
||||
Type=Application
|
||||
Categories=Qt;Development;Documentation;</literal>
|
||||
EOF
|
||||
|
||||
cat > /usr/share/applications/designer-qt4.desktop << "EOF"
|
||||
<literal>[Desktop Entry]
|
||||
Name=Qt4 Designer
|
||||
Comment=Design GUIs for Qt4 applications
|
||||
Exec=designer-qt4
|
||||
Icon=designer-qt4
|
||||
MimeType=application/x-designer;
|
||||
Terminal=false
|
||||
Encoding=UTF-8
|
||||
Type=Application
|
||||
Categories=Qt;Development;</literal>
|
||||
EOF
|
||||
|
||||
cat > /usr/share/applications/linguist-qt4.desktop << "EOF"
|
||||
<literal>[Desktop Entry]
|
||||
Name=Qt4 Linguist
|
||||
Comment=Add translations to Qt4 applications
|
||||
Exec=linguist-qt4
|
||||
Icon=linguist-qt4
|
||||
MimeType=text/vnd.trolltech.linguist;application/x-linguist;
|
||||
Terminal=false
|
||||
Encoding=UTF-8
|
||||
Type=Application
|
||||
Categories=Qt;Development;</literal>
|
||||
EOF
|
||||
|
||||
cat > /usr/share/applications/qdbusviewer-qt4.desktop << "EOF"
|
||||
<literal>[Desktop Entry]
|
||||
Name=Qt4 QDbusViewer
|
||||
GenericName=D-Bus Debugger
|
||||
Comment=Debug D-Bus applications
|
||||
Exec=qdbusviewer-qt4
|
||||
Icon=qdbusviewer-qt4
|
||||
Terminal=false
|
||||
Encoding=UTF-8
|
||||
Type=Application
|
||||
Categories=Qt;Development;Debugger;</literal>
|
||||
EOF</userinput></screen>
|
||||
|
||||
</sect3>
|
||||
|
||||
|
||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
|
||||
href="../../xincludes/setqt.xml"/>
|
||||
</sect2>
|
||||
|
||||
<sect2 role="content">
|
||||
@ -616,13 +530,13 @@ EOF</userinput></screen>
|
||||
|
||||
<seglistitem>
|
||||
<seg>
|
||||
assistant-qt4, designer-qt4, lconvert-qt4, linguist-qt4,
|
||||
lrelease-qt4, lupdate-qt4, moc-qt4, pixeltool-qt4,
|
||||
qcollectiongenerator-qt4, qdbuscpp2xml-qt4, qdbus-qt4,
|
||||
qdbusviewer-qt4, qdbusxml2cpp-qt4, qdoc3-qt4, qhelpconverter-qt4,
|
||||
qhelpgenerator-qt4, qmake-qt4, qmlplugindump-qt4, qmlviewer-qt4,
|
||||
qt3to4-qt4, qtconfig-qt4, qttracereplay-qt4, rcc-qt4, uic3-qt4,
|
||||
uic-qt4, xmlpatterns-qt4 and xmlpatternsvalidator-qt4
|
||||
assistant, designer, lconvert, linguist,
|
||||
lrelease, lupdate, moc, pixeltool,
|
||||
qcollectiongenerator, qdbuscpp2xml, qdbus,
|
||||
qdbusviewer, qdbusxml2cpp, qdoc3, qhelpconverter,
|
||||
qhelpgenerator, qmake, qmlplugindump, qmlviewer,
|
||||
qt3to4, qtconfig, qttracereplay, rcc, uic3,
|
||||
uic, xmlpatterns, and xmlpatternsvalidator
|
||||
</seg>
|
||||
<seg>
|
||||
libQt3Support.so, libQtCLucene.so, libQtCore.so, libQtDBus.so,
|
||||
@ -630,14 +544,16 @@ EOF</userinput></screen>
|
||||
libQtDesigner.so, libQtGui.so, libQtHelp.so, libQtMultimedia.so,
|
||||
libQtNetwork.so, libQtOpenGL.so, libQtScript.so, libQtScriptTools.so,
|
||||
libQtSql.so, libQtSvg.so, libQtTest.so, libQtWebKit.so,
|
||||
libQtXmlPatterns.so and libQtXml.so
|
||||
libQtXmlPatterns.so, and libQtXml.so
|
||||
</seg>
|
||||
<seg>
|
||||
/usr/include/qt4,
|
||||
/usr/lib/qt4,
|
||||
/usr/share/doc/qt4, and
|
||||
/usr/share/qt4 (OR $QTDIR)
|
||||
(OR $QTDIR)
|
||||
/usr/share/qt4
|
||||
OR
|
||||
/opt/qt and
|
||||
/opt/qt-&qt4-version;
|
||||
</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
@ -648,19 +564,19 @@ EOF</userinput></screen>
|
||||
<?dbhtml list-presentation="table"?>
|
||||
|
||||
<varlistentry id="assistant-qt4">
|
||||
<term><command>assistant-qt4</command></term>
|
||||
<term><command>assistant</command></term>
|
||||
<listitem>
|
||||
<para>
|
||||
is a tool for presenting on-line documentation.
|
||||
</para>
|
||||
<indexterm zone="qt4 assistant-qt4">
|
||||
<primary sortas="b-assistant-qt4">assistant-qt4</primary>
|
||||
<primary sortas="b-assistant-qt4">assistant</primary>
|
||||
</indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="designer-qt4">
|
||||
<term><command>designer-qt4</command></term>
|
||||
<term><command>designer</command></term>
|
||||
<listitem>
|
||||
<para>
|
||||
is a full-fledged GUI builder. It includes
|
||||
@ -669,39 +585,39 @@ EOF</userinput></screen>
|
||||
property editor.
|
||||
</para>
|
||||
<indexterm zone="qt4 designer-qt4">
|
||||
<primary sortas="b-designer-qt4">designer-qt4</primary>
|
||||
<primary sortas="b-designer-qt4">designer</primary>
|
||||
</indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="linguist-qt4">
|
||||
<term><command>linguist-qt4</command></term>
|
||||
<term><command>linguist</command></term>
|
||||
<listitem>
|
||||
<para>
|
||||
provides support for translating applications into
|
||||
local languages.
|
||||
</para>
|
||||
<indexterm zone="qt4 linguist-qt4">
|
||||
<primary sortas="b-linguist-qt4">linguist-qt4</primary>
|
||||
<primary sortas="b-linguist-qt4">linguist</primary>
|
||||
</indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="lrelease-qt4">
|
||||
<term><command>lrelease-qt4</command></term>
|
||||
<term><command>lrelease</command></term>
|
||||
<listitem>
|
||||
<para>
|
||||
is a simple command line tool. It reads a Qt project
|
||||
file and produces message files used by the application.
|
||||
</para>
|
||||
<indexterm zone="qt4 lrelease-qt4">
|
||||
<primary sortas="b-lrelease-qt4">lrelease-qt4</primary>
|
||||
<primary sortas="b-lrelease-qt4">lrelease</primary>
|
||||
</indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="lupdate-qt4">
|
||||
<term><command>lupdate-qt4</command></term>
|
||||
<term><command>lupdate</command></term>
|
||||
<listitem>
|
||||
<para>
|
||||
reads a Qt project file, finds the translatable
|
||||
@ -710,38 +626,38 @@ EOF</userinput></screen>
|
||||
files listed in the project file.
|
||||
</para>
|
||||
<indexterm zone="qt4 lupdate-qt4">
|
||||
<primary sortas="b-lupdate-qt4">lupdate-qt4</primary>
|
||||
<primary sortas="b-lupdate-qt4">lupdate</primary>
|
||||
</indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="moc-qt4">
|
||||
<term><command>moc-qt4</command></term>
|
||||
<term><command>moc</command></term>
|
||||
<listitem>
|
||||
<para>
|
||||
generates Qt meta object support code.
|
||||
</para>
|
||||
<indexterm zone="qt4 moc-qt4">
|
||||
<primary sortas="b-moc-qt4">moc-qt4</primary>
|
||||
<primary sortas="b-moc-qt4">moc</primary>
|
||||
</indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="pixeltool-qt4">
|
||||
<term><command>pixeltool-qt4</command></term>
|
||||
<term><command>pixeltool</command></term>
|
||||
<listitem>
|
||||
<para>
|
||||
is a desktop magnifier and as you move your mouse around
|
||||
the screen it will show the magnified contents in its window.
|
||||
</para>
|
||||
<indexterm zone="qt4 pixeltool-qt4">
|
||||
<primary sortas="b-pixeltool-qt4">pixeltool-qt4</primary>
|
||||
<primary sortas="b-pixeltool-qt4">pixeltool</primary>
|
||||
</indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="qmake-qt4">
|
||||
<term><command>qmake-qt4</command></term>
|
||||
<term><command>qmake</command></term>
|
||||
<listitem>
|
||||
<para>
|
||||
uses information stored in project files to
|
||||
@ -749,61 +665,61 @@ EOF</userinput></screen>
|
||||
generates.
|
||||
</para>
|
||||
<indexterm zone="qt4 qmake-qt4">
|
||||
<primary sortas="b-qmake-qt4">qmake-qt4</primary>
|
||||
<primary sortas="b-qmake-qt4">qmake</primary>
|
||||
</indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="qt3to4-qt4">
|
||||
<term><command>qt3to4-qt4</command></term>
|
||||
<term><command>qt3to4</command></term>
|
||||
<listitem>
|
||||
<para>
|
||||
qt3to4 is a tool to help update Qt3 code to Qt4.
|
||||
</para>
|
||||
<indexterm zone="qt4 qt3to4-qt4">
|
||||
<primary sortas="b-qt3to4-qt4">qt3to4-qt4</primary>
|
||||
<primary sortas="b-qt3to4-qt4">qt3to4</primary>
|
||||
</indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="qtconfig-qt4">
|
||||
<term><command>qtconfig-qt4</command></term>
|
||||
<term><command>qtconfig</command></term>
|
||||
<listitem>
|
||||
<para>
|
||||
is used to customize the appearance of Qt applications.
|
||||
</para>
|
||||
<indexterm zone="qt4 qtconfig-qt4">
|
||||
<primary sortas="b-qtconfig-qt4">qtconfig-qt4</primary>
|
||||
<primary sortas="b-qtconfig-qt4">qtconfig</primary>
|
||||
</indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="rcc-qt4">
|
||||
<term><command>rcc-qt4</command></term>
|
||||
<term><command>rcc</command></term>
|
||||
<listitem>
|
||||
<para>
|
||||
is a resource compiler used in conjunction with designer.
|
||||
</para>
|
||||
<indexterm zone="qt4 rcc-qt4">
|
||||
<primary sortas="b-rcc-qt4">rcc-qt4</primary>
|
||||
<primary sortas="b-rcc-qt4">rcc</primary>
|
||||
</indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="uic-qt4">
|
||||
<term><command>uic-qt4</command></term>
|
||||
<term><command>uic</command></term>
|
||||
<listitem>
|
||||
<para>
|
||||
is a Qt user interface compiler.
|
||||
</para>
|
||||
<indexterm zone="qt4 uic-qt4">
|
||||
<primary sortas="b-uic-qt4">uic-qt4</primary>
|
||||
<primary sortas="b-uic-qt4">uic</primary>
|
||||
</indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="uic3-qt4">
|
||||
<term><command>uic3-qt4</command></term>
|
||||
<term><command>uic3</command></term>
|
||||
<listitem>
|
||||
<para>
|
||||
is a tool to generate Qt4 code out of
|
||||
@ -811,7 +727,7 @@ EOF</userinput></screen>
|
||||
version of designer.
|
||||
</para>
|
||||
<indexterm zone="qt4 uic3-qt4">
|
||||
<primary sortas="b-uic3-qt4">uic3-qt4</primary>
|
||||
<primary sortas="b-uic3-qt4">uic3</primary>
|
||||
</indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
366
x/lib/qt5.xml
366
x/lib/qt5.xml
@ -38,11 +38,10 @@
|
||||
with a graphical user interface (GUI) (in which cases
|
||||
<application>Qt5</application> is classified as a widget toolkit), and
|
||||
also used for developing non-GUI programs such as command-line tools
|
||||
and consoles for servers. One of the major users of
|
||||
<application>Qt5</application> is <application>KDE Frameworks 5</application>.
|
||||
and consoles for servers.
|
||||
</para>
|
||||
|
||||
&lfs74_checked;
|
||||
&lfs75_checked;
|
||||
|
||||
<bridgehead renderas="sect3">Package Information</bridgehead>
|
||||
<itemizedlist spacing="compact">
|
||||
@ -97,7 +96,7 @@
|
||||
<xref linkend="dbus"/>,
|
||||
<xref linkend="glib2"/>,
|
||||
<xref linkend="gst-plugins-base"/>,<!--
|
||||
<xref linkend="harfbuzz"/>, Doesn't have all the features that the shipped one has. -->
|
||||
<xref linkend="harfbuzz"/>, Doesn't have all the features that the included one has. -->
|
||||
<xref linkend="icu"/>,
|
||||
<xref linkend="libjpeg"/>,
|
||||
<xref linkend="libmng"/>,
|
||||
@ -122,75 +121,17 @@
|
||||
<xref linkend="unixodbc"/>
|
||||
</para>
|
||||
|
||||
<bridgehead renderas="sect4">Required (Runtime)</bridgehead>
|
||||
<para role="required">
|
||||
<xref linkend="qtchooser"/> (if installing both
|
||||
<application>Qt4</application> and <application>Qt5</application>
|
||||
and installing in <filename class="directory">/usr</filename>)
|
||||
</para>
|
||||
|
||||
<para condition="html" role="usernotes">User Notes:
|
||||
<ulink url="&blfs-wiki;/qt5"/>
|
||||
</para>
|
||||
</sect2>
|
||||
|
||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
|
||||
href="../../xincludes/qt-alternatives.xml"/>
|
||||
|
||||
<sect2 role="installation">
|
||||
<title>Installation of Qt5</title>
|
||||
|
||||
<para>
|
||||
There are several ways to install a complicated package such as
|
||||
<application>Qt5</application>. The files are not completely position
|
||||
independent. Installation procedures execute the program
|
||||
<command>pkg-config</command> to determine the location of package
|
||||
executables, libraries, headers, and other files. For
|
||||
<application>Qt5</application>, <command>pkg-config</command> will look
|
||||
for the appropriate <filename>lib/pkgconfig/Qt5*.pc</filename> files
|
||||
which must be modified if relocating the package. These files are set up
|
||||
correctly by the build process.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
The default installation places the files in <filename
|
||||
class="directory">/usr/local/qt</filename>. Many
|
||||
distributions place the files in the system's <filename
|
||||
class="directory">/usr</filename> hierarchy. The package can
|
||||
also be installed in an arbitrary directory.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
The advantage of installing in <filename
|
||||
class="directory">/usr</filename> is that no updates to the
|
||||
<filename>/etc/ld.so.conf</filename> or
|
||||
<filename>/etc/man_db.conf</filename> files are required. The package
|
||||
files are distributed within several subdirectories of the <filename
|
||||
class="directory">/usr</filename> hierarchy. This is the method that
|
||||
most distributions use.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
The disadvantage of installing in <filename
|
||||
class="directory">/usr</filename> is that the executable filenames
|
||||
for <application>Qt4</application> and <application>Qt5</application>
|
||||
conflict if both packages are installed in the
|
||||
same directory. The instructions below give a workaround for
|
||||
this problem using the helper programs from <xref linkend="qtchooser"/>.
|
||||
<!-- renaming is not required because of this, only using a different
|
||||
bindir is -->
|
||||
</para>
|
||||
|
||||
<para>
|
||||
The advantage of installing <application>Qt5</application> in a custom
|
||||
directory such as <filename
|
||||
class="directory">/opt/qt-&qt5-version;</filename> is that it keeps all
|
||||
the package files consolidated in a dedicated directory hierarchy. By
|
||||
using this method, an update can be made without overwriting a previous
|
||||
installation and users can easily revert to a previous version by
|
||||
changing one symbolic link or merely changing the <envar>PATH</envar>
|
||||
variable. It also allows a developer to maintain multiple versions of
|
||||
<application>Qt4</application> or <application>Qt5</application>
|
||||
for testing.
|
||||
</para>
|
||||
|
||||
<caution>
|
||||
<para>
|
||||
If you did not install some of the recommended dependencies, examine
|
||||
@ -208,7 +149,7 @@
|
||||
not be in use during the install process.
|
||||
</para>
|
||||
</warning>
|
||||
|
||||
<!-- ==== Method 1 ====== -->
|
||||
<bridgehead renderas="sect3">Method 1: Installing in /usr</bridgehead>
|
||||
|
||||
<para>
|
||||
@ -217,7 +158,8 @@
|
||||
</para>
|
||||
|
||||
<!-- This is rather a bad idea. Most apps that I've seen using Qt5 look for -qt5
|
||||
suffixed programs.
|
||||
suffixed programs. On the other hand, the developer is used to running
|
||||
qmake, linguist, etc from the command line.
|
||||
|
||||
<note>
|
||||
<para>
|
||||
@ -226,9 +168,11 @@
|
||||
</para>
|
||||
</note> -->
|
||||
|
||||
<screen><userinput>./configure -prefix /usr \
|
||||
<screen><userinput>export QTLINK=/usr
|
||||
|
||||
./configure -prefix /usr \
|
||||
-sysconfdir /etc/xdg \
|
||||
-bindir /usr/lib/qt5/bin \
|
||||
-bindir /usr/bin \
|
||||
-headerdir /usr/include/qt5 \
|
||||
-archdatadir /usr/lib/qt5 \
|
||||
-datadir /usr/share/qt5 \
|
||||
@ -247,6 +191,10 @@
|
||||
-optimized-qmake &&
|
||||
make</userinput></screen>
|
||||
|
||||
<para>
|
||||
This package does not come with a test suite.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Remove references to the build directory from the
|
||||
<filename class="extension">.pc</filename> files by running
|
||||
@ -255,23 +203,11 @@ make</userinput></screen>
|
||||
|
||||
<screen><userinput>find . -name "*.pc" -exec perl -pi -e "s, -L$PWD/?\S+,,g" {} \;</userinput></screen>
|
||||
|
||||
<para>
|
||||
This package does not come with a test suite.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Now, as the <systemitem class="username">root</systemitem> user:
|
||||
</para>
|
||||
|
||||
<screen role="root"><userinput>make install &&
|
||||
install -v -Dm644 qttools/src/assistant/assistant/images/assistant-128.png \
|
||||
/usr/share/pixmaps/assistant-qt5.png &&
|
||||
install -v -Dm644 qttools/src/designer/src/designer/images/designer.png \
|
||||
/usr/share/pixmaps/designer-qt5.png &&
|
||||
install -v -Dm644 qttools/src/linguist/linguist/images/icons/linguist-128-32.png \
|
||||
/usr/share/pixmaps/linguist-qt5.png &&
|
||||
install -v -Dm644 qttools/src/qdbus/qdbusviewer/images/qdbusviewer-128.png \
|
||||
/usr/share/pixmaps/qdbusviewer-qt5.png</userinput></screen>
|
||||
<screen role="root"><userinput>make install</userinput></screen>
|
||||
|
||||
<para>
|
||||
Remove references to the build directory from installed files by
|
||||
@ -279,39 +215,24 @@ install -v -Dm644 qttools/src/qdbus/qdbusviewer/images/qdbusviewer-128.png \
|
||||
<systemitem class="username">root</systemitem> user:
|
||||
</para>
|
||||
|
||||
<screen role="root"><userinput>sed -i -e "s:$PWD/qtbase:/usr/lib/qt5:g" \
|
||||
/usr/lib/qt5/mkspecs/modules/qt_lib_bootstrap_private.pri &&
|
||||
find /usr/lib/lib{qgsttools_p,Qt5*}.prl -exec sed -i -e \
|
||||
'/^QMAKE_PRL_BUILD_DIR/d;s/\(QMAKE_PRL_LIBS =\).*/\1/' {} \;</userinput></screen>
|
||||
<screen role="root"><userinput>
|
||||
sed -e "s:$PWD/qtbase:/usr/lib/qt5:g" \
|
||||
-i /usr/lib/qt5/mkspecs/modules/qt_lib_bootstrap_private.pri &&
|
||||
|
||||
<para>
|
||||
<!-- If you didn't modify the -bindir switch above, -->Symlink the
|
||||
<application>Qt5</application> executables into
|
||||
<filename class="directory">/usr/bin</filename> by running the
|
||||
following commands as the
|
||||
<systemitem class="username">root</systemitem> user:
|
||||
</para>
|
||||
find /usr/lib/lib{qgsttools_p,Qt5*}.prl -exec sed -i -r \
|
||||
'/^QMAKE_PRL_BUILD_DIR/d;s/(QMAKE_PRL_LIBS =).*/\1/' {} \;</userinput></screen>
|
||||
|
||||
<screen role="root"><userinput>for file in /usr/lib/qt5/bin/*
|
||||
do
|
||||
ln -sfv ../lib/qt5/bin/$(basename $file) /usr/bin/$(basename $file)-qt5
|
||||
done</userinput></screen>
|
||||
<!-- ==== Method 2 ====== -->
|
||||
|
||||
<bridgehead renderas="sect3">Method 2: Installing in /opt/qt-&qt5-version;</bridgehead>
|
||||
|
||||
<para>
|
||||
This section provides an alternate way to install <application>Qt5</application>
|
||||
by installing almost all of the files in the <filename
|
||||
class="directory">/opt</filename> directory. This allows management of all
|
||||
<application>Qt5</application> related files in one unit. For instance, a new
|
||||
version of <application>Qt5</application> can be installed without over-writing
|
||||
the existing installation and entire <application>Qt5</application> instances can
|
||||
be easily removed. However, it has the disadvantage of needing some extra
|
||||
configuration and you need to switch manually between <application>Qt4</application>
|
||||
and <application>Qt5</application> executables when needed.
|
||||
</para>
|
||||
<para>
|
||||
This section provides for installing Qt4 almost all of the files in the
|
||||
<filename class="directory">/opt</filename> directory.
|
||||
</para>
|
||||
|
||||
<screen><userinput>export QT5DIR=/opt/qt-&qt5-version;
|
||||
<screen><userinput>export QT5DIR=/opt/qt-&qt5-version; &&
|
||||
export QTLINK=/opt/qt5 &&
|
||||
|
||||
./configure -prefix $QT5DIR \
|
||||
-sysconfdir /etc/xdg \
|
||||
@ -332,16 +253,7 @@ make</userinput></screen>
|
||||
</para>
|
||||
|
||||
<screen role="root"><userinput>make install &&
|
||||
|
||||
install -v -dm755 /usr/share/pixmaps/ &&
|
||||
install -v -Dm644 qttools/src/assistant/assistant/images/assistant-128.png \
|
||||
/usr/share/pixmaps/assistant-qt5.png &&
|
||||
install -v -Dm644 qttools/src/designer/src/designer/images/designer.png \
|
||||
/usr/share/pixmaps/designer-qt5.png &&
|
||||
install -v -Dm644 qttools/src/linguist/linguist/images/icons/linguist-128-32.png \
|
||||
/usr/share/pixmaps/linguist-qt5.png &&
|
||||
install -v -Dm644 qttools/src/qdbus/qdbusviewer/images/qdbusviewer-128.png \
|
||||
/usr/share/pixmaps/qdbusviewer-qt5.png</userinput></screen>
|
||||
ln -svfn $QT5DIR /opt/qt5</userinput></screen>
|
||||
|
||||
<para>
|
||||
Remove references to the build directory from installed files by
|
||||
@ -355,8 +267,7 @@ install -v -Dm644 qttools/src/qdbus/qdbusviewer/images/qdbusviewer-128.png \
|
||||
find $QT5DIR -name \*.prl \
|
||||
-exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;</userinput></screen>
|
||||
|
||||
<!-- This is useful for packages looking explicitly for Qt apps with -qt5 suffix,
|
||||
and is *required* for the desktop files below to work correctly. -->
|
||||
<!-- This is useful for packages looking explicitly for Qt apps with -qt5 suffix.
|
||||
|
||||
<para>
|
||||
Symlink the <application>Qt5</application> executables into
|
||||
@ -369,7 +280,85 @@ find $QT5DIR -name \*.prl \
|
||||
|
||||
for file in /opt/qt5/bin/*; do
|
||||
ln -sfv $file /usr/bin/$(basename $file)-qt5
|
||||
done</userinput></screen>
|
||||
done</userinput></screen> -->
|
||||
|
||||
<!-- ==== Common ====== -->
|
||||
<bridgehead renderas="sect3">Continuing for Both Methods</bridgehead>
|
||||
|
||||
<para>
|
||||
For all methods, install images and create the menu entries
|
||||
for installed applications. Be sure that the <envar>QTLINK</envar>
|
||||
variable is defined in root's environment and
|
||||
as the <systemitem class="username">root</systemitem> user:
|
||||
</para>
|
||||
|
||||
<screen role="root"><userinput>install -v -dm755 /usr/share/pixmaps/ &&
|
||||
|
||||
install -v -Dm644 qttools/src/assistant/assistant/images/assistant-128.png \
|
||||
/usr/share/pixmaps/assistant-qt5.png &&
|
||||
|
||||
install -v -Dm644 qttools/src/designer/src/designer/images/designer.png \
|
||||
/usr/share/pixmaps/designer-qt5.png &&
|
||||
|
||||
install -v -Dm644 qttools/src/linguist/linguist/images/icons/linguist-128-32.png \
|
||||
/usr/share/pixmaps/linguist-qt5.png &&
|
||||
|
||||
install -v -Dm644 qttools/src/qdbus/qdbusviewer/images/qdbusviewer-128.png \
|
||||
/usr/share/pixmaps/qdbusviewer-qt5.png &&
|
||||
|
||||
install -dm755 /usr/share/applications &&
|
||||
|
||||
cat > /usr/share/applications/assistant-qt5.desktop << EOF
|
||||
<literal>[Desktop Entry]
|
||||
Name=Qt5 Assistant
|
||||
Comment=Shows Qt5 documentation and examples
|
||||
Exec=$QTLINK/bin/assistant
|
||||
Icon=assistant-qt5.png
|
||||
Terminal=false
|
||||
Encoding=UTF-8
|
||||
Type=Application
|
||||
Categories=Qt;Development;Documentation;</literal>
|
||||
EOF
|
||||
|
||||
cat > /usr/share/applications/designer-qt5.desktop << EOF
|
||||
<literal>[Desktop Entry]
|
||||
Name=Qt5 Designer
|
||||
GenericName=Interface Designer
|
||||
Comment=Design GUIs for Qt5 applications
|
||||
Exec=$QTLINK/bin/designer
|
||||
Icon=designer-qt5.png
|
||||
MimeType=application/x-designer;
|
||||
Terminal=false
|
||||
Encoding=UTF-8
|
||||
Type=Application
|
||||
Categories=Qt;Development;</literal>
|
||||
EOF
|
||||
|
||||
cat > /usr/share/applications/linguist-qt5.desktop << EOF
|
||||
<literal>[Desktop Entry]
|
||||
Name=Qt5 Linguist
|
||||
Comment=Add translations to Qt5 applications
|
||||
Exec=$QTLINK/bin/linguist
|
||||
Icon=linguist-qt5.png
|
||||
MimeType=text/vnd.trolltech.linguist;application/x-linguist;
|
||||
Terminal=false
|
||||
Encoding=UTF-8
|
||||
Type=Application
|
||||
Categories=Qt;Development;</literal>
|
||||
EOF
|
||||
|
||||
cat > /usr/share/applications/qdbusviewer-qt5.desktop << EOF
|
||||
<literal>[Desktop Entry]
|
||||
Name=Qt5 QDbusViewer
|
||||
GenericName=D-Bus Debugger
|
||||
Comment=Debug D-Bus applications
|
||||
Exec=$QTLINK/bin/qdbusviewer
|
||||
Icon=qdbusviewer-qt5.png
|
||||
Terminal=false
|
||||
Encoding=UTF-8
|
||||
Type=Application
|
||||
Categories=Qt;Development;Debugger;</literal>
|
||||
EOF</userinput></screen>
|
||||
|
||||
</sect2>
|
||||
|
||||
@ -455,58 +444,6 @@ done</userinput></screen>
|
||||
user:
|
||||
</para>
|
||||
|
||||
<screen role="root"><userinput>install -dm755 /usr/share/applications
|
||||
cat > /usr/share/applications/assistant-qt5.desktop << "EOF"
|
||||
<literal>[Desktop Entry]
|
||||
Name=Qt5 Assistant
|
||||
Comment=Shows Qt5 documentation and examples
|
||||
Exec=assistant-qt5
|
||||
Icon=assistant-qt5
|
||||
Terminal=false
|
||||
Encoding=UTF-8
|
||||
Type=Application
|
||||
Categories=Qt;Development;Documentation;</literal>
|
||||
EOF
|
||||
cat > /usr/share/applications/designer-qt5.desktop << "EOF"
|
||||
<literal>[Desktop Entry]
|
||||
Name=Qt5 Designer
|
||||
GenericName=Interface Designer
|
||||
Comment=Design GUIs for Qt5 applications
|
||||
Exec=designer-qt5
|
||||
Icon=designer-qt5
|
||||
MimeType=application/x-designer;
|
||||
Terminal=false
|
||||
Encoding=UTF-8
|
||||
Type=Application
|
||||
Categories=Qt;Development;</literal>
|
||||
EOF
|
||||
cat > /usr/share/applications/linguist-qt5.desktop << "EOF"
|
||||
<literal>[Desktop Entry]
|
||||
Name=Qt5 Linguist
|
||||
Comment=Add translations to Qt5 applications
|
||||
Exec=linguist-qt5
|
||||
Icon=linguist-qt5
|
||||
MimeType=text/vnd.trolltech.linguist;application/x-linguist;
|
||||
Terminal=false
|
||||
Encoding=UTF-8
|
||||
Type=Application
|
||||
Categories=Qt;Development;</literal>
|
||||
EOF
|
||||
cat > /usr/share/applications/qdbusviewer-qt5.desktop << "EOF"
|
||||
<literal>[Desktop Entry]
|
||||
Name=Qt5 QDbusViewer
|
||||
GenericName=D-Bus Debugger
|
||||
Comment=Debug D-Bus applications
|
||||
Exec=qdbusviewer-qt5
|
||||
Icon=qdbusviewer-qt5
|
||||
Terminal=false
|
||||
Encoding=UTF-8
|
||||
Type=Application
|
||||
Categories=Qt;Development;Debugger;</literal>
|
||||
EOF</userinput></screen>
|
||||
|
||||
<!-- No package uses this at the moment.
|
||||
|
||||
<para>
|
||||
If you installed <application>Qt5</application> in
|
||||
<filename class="directory">/usr</filename>, create an
|
||||
@ -518,22 +455,11 @@ EOF</userinput></screen>
|
||||
<literal># Begin /etc/profile.d/qt5.sh
|
||||
|
||||
QTDIR=/usr
|
||||
|
||||
export QT5DIR
|
||||
|
||||
# End /etc/profile.d/qt5.sh</literal>
|
||||
EOF</userinput></screen>
|
||||
|
||||
-->
|
||||
|
||||
<note>
|
||||
<para>
|
||||
If you have installed <application>Qt5</application> in
|
||||
<filename class="directory">/usr</filename>, you can skip
|
||||
rest of this section.
|
||||
</para>
|
||||
</note>
|
||||
|
||||
<para>
|
||||
If you installed <application>Qt5</application> in a location other
|
||||
than <filename class="directory">/usr</filename>, you need to update the
|
||||
@ -579,19 +505,10 @@ export QT5DIR
|
||||
# End /etc/profile.d/qt5.sh</literal>
|
||||
EOF</userinput></screen>
|
||||
|
||||
<note>
|
||||
<para>
|
||||
If you also installed <application>Qt4</application> and need to use
|
||||
the <application>Qt5</application> version of an executable such as
|
||||
<command>qmake</command> for building a program, make sure that
|
||||
the <application>Qt5</application> bin directory is listed prior to
|
||||
the <application>Qt5</application> bin directory in the
|
||||
<envar>PATH</envar> variable.
|
||||
</para>
|
||||
</note>
|
||||
|
||||
</sect3>
|
||||
|
||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
|
||||
href="../../xincludes/setqt.xml"/>
|
||||
</sect2>
|
||||
|
||||
<sect2 role="content">
|
||||
@ -604,13 +521,13 @@ EOF</userinput></screen>
|
||||
|
||||
<seglistitem>
|
||||
<seg>
|
||||
assistant-qt5, designer-qt5, lconvert-qt5, linguist-qt5, lrelease-qt5,
|
||||
lupdate-qt5, moc-qt5, pixeltool-qt5, qcollectiongenerator-qt5, qdbuscpp2xml-qt5,
|
||||
qdbus-qt5, qdbusviewer-qt5, qdbusxml2cpp-qt5, qdoc-qt5, qhelpconverter-qt5,
|
||||
qhelpgenerator-qt5, qmake-qt5, qml1plugindump-qt5, qmlbundle-qt5,
|
||||
qmlimportscanner-qt5, qmlmin-qt5, qmlplugindump-qt5, qmlprofiler-qt5, qml-qt5,
|
||||
qmlscene-qt5, qmltestrunner-qt5, qmlviewer-qt5, qtpaths-qt5, rcc-qt5,
|
||||
syncqt.pl-qt5, uic-qt5, xmlpatterns-qt5, and xmlpatternsvalidator-qt5
|
||||
assistant, designer, lconvert, linguist, lrelease,
|
||||
lupdate, moc, pixeltool, qcollectiongenerator, qdbuscpp2xml,
|
||||
qdbus, qdbusviewer, qdbusxml2cpp, qdoc, qhelpconverter,
|
||||
qhelpgenerator, qmake, qml1plugindump, qmlbundle,
|
||||
qmlimportscanner, qmlmin, qmlplugindump, qmlprofiler, qml,
|
||||
qmlscene, qmltestrunner, qmlviewer, qtpaths, rcc,
|
||||
syncqt.pl, uic, xmlpatterns, and xmlpatternsvalidator
|
||||
</seg>
|
||||
<seg>
|
||||
libqgsttools_p.so, libQt5Bluetooth.so, libQt5Bootstrap.a, libQt5CLucene.so,
|
||||
@ -630,6 +547,9 @@ EOF</userinput></screen>
|
||||
/usr/lib/qt5,
|
||||
/usr/share/doc/qt5, and
|
||||
/usr/share/qt5
|
||||
OR
|
||||
/opy/qt5 and
|
||||
/opt/qt-&qt5-version;
|
||||
</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
@ -640,19 +560,19 @@ EOF</userinput></screen>
|
||||
<?dbhtml list-presentation="table"?>
|
||||
|
||||
<varlistentry id="assistant-qt5">
|
||||
<term><command>assistant-qt5</command></term>
|
||||
<term><command>assistant</command></term>
|
||||
<listitem>
|
||||
<para>
|
||||
is a tool for presenting on-line documentation.
|
||||
</para>
|
||||
<indexterm zone="qt5 assistant-qt5">
|
||||
<primary sortas="b-assistant-qt5">assistant-qt5</primary>
|
||||
<primary sortas="b-assistant-qt5">assistant</primary>
|
||||
</indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="designer-qt5">
|
||||
<term><command>designer-qt5</command></term>
|
||||
<term><command>designer</command></term>
|
||||
<listitem>
|
||||
<para>
|
||||
is a full-fledged GUI builder. It includes
|
||||
@ -661,39 +581,39 @@ EOF</userinput></screen>
|
||||
property editor.
|
||||
</para>
|
||||
<indexterm zone="qt5 designer-qt5">
|
||||
<primary sortas="b-designer-qt5">designer-qt5</primary>
|
||||
<primary sortas="b-designer-qt5">designer</primary>
|
||||
</indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="linguist-qt5">
|
||||
<term><command>linguist-qt5</command></term>
|
||||
<term><command>linguist</command></term>
|
||||
<listitem>
|
||||
<para>
|
||||
provides support for translating applications into
|
||||
local languages.
|
||||
</para>
|
||||
<indexterm zone="qt5 linguist-qt5">
|
||||
<primary sortas="b-linguist-qt5">linguist-qt5</primary>
|
||||
<primary sortas="b-linguist-qt5">linguist</primary>
|
||||
</indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="lrelease-qt5">
|
||||
<term><command>lrelease-qt5</command></term>
|
||||
<term><command>lrelease</command></term>
|
||||
<listitem>
|
||||
<para>
|
||||
is a simple command line tool. It reads a Qt project
|
||||
file and produces message files used by the application.
|
||||
</para>
|
||||
<indexterm zone="qt5 lrelease-qt5">
|
||||
<primary sortas="b-lrelease-qt5">lrelease-qt5</primary>
|
||||
<primary sortas="b-lrelease-qt5">lrelease</primary>
|
||||
</indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="lupdate-qt5">
|
||||
<term><command>lupdate-qt5</command></term>
|
||||
<term><command>lupdate</command></term>
|
||||
<listitem>
|
||||
<para>
|
||||
reads a Qt project file, finds the translatable
|
||||
@ -702,38 +622,38 @@ EOF</userinput></screen>
|
||||
files listed in the project file.
|
||||
</para>
|
||||
<indexterm zone="qt5 lupdate-qt5">
|
||||
<primary sortas="b-lupdate-qt5">lupdate-qt5</primary>
|
||||
<primary sortas="b-lupdate-qt5">lupdate</primary>
|
||||
</indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="moc-qt5">
|
||||
<term><command>moc-qt5</command></term>
|
||||
<term><command>moc</command></term>
|
||||
<listitem>
|
||||
<para>
|
||||
generates Qt meta object support code.
|
||||
</para>
|
||||
<indexterm zone="qt5 moc-qt5">
|
||||
<primary sortas="b-moc-qt5">moc-qt5</primary>
|
||||
<primary sortas="b-moc-qt5">moc</primary>
|
||||
</indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="pixeltool-qt5">
|
||||
<term><command>pixeltool-qt5</command></term>
|
||||
<term><command>pixeltool</command></term>
|
||||
<listitem>
|
||||
<para>
|
||||
is a desktop magnifier and as you move your mouse around
|
||||
the screen it will show the magnified contents in its window.
|
||||
</para>
|
||||
<indexterm zone="qt5 pixeltool-qt5">
|
||||
<primary sortas="b-pixeltool-qt5">pixeltool-qt5</primary>
|
||||
<primary sortas="b-pixeltool-qt5">pixeltool</primary>
|
||||
</indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="qmake-qt5">
|
||||
<term><command>qmake-qt5</command></term>
|
||||
<term><command>qmake</command></term>
|
||||
<listitem>
|
||||
<para>
|
||||
uses information stored in project files to
|
||||
@ -741,31 +661,31 @@ EOF</userinput></screen>
|
||||
generates.
|
||||
</para>
|
||||
<indexterm zone="qt5 qmake-qt5">
|
||||
<primary sortas="b-qmake-qt5">qmake-qt5</primary>
|
||||
<primary sortas="b-qmake-qt5">qmake</primary>
|
||||
</indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="rcc-qt5">
|
||||
<term><command>rcc-qt5</command></term>
|
||||
<term><command>rcc</command></term>
|
||||
<listitem>
|
||||
<para>
|
||||
is a resource compiler used in conjunction with designer.
|
||||
</para>
|
||||
<indexterm zone="qt5 rcc-qt5">
|
||||
<primary sortas="b-rcc-qt5">rcc-qt5</primary>
|
||||
<primary sortas="b-rcc-qt5">rcc</primary>
|
||||
</indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="uic-qt5">
|
||||
<term><command>uic-qt5</command></term>
|
||||
<term><command>uic</command></term>
|
||||
<listitem>
|
||||
<para>
|
||||
is a Qt user interface compiler.
|
||||
</para>
|
||||
<indexterm zone="qt5 uic-qt5">
|
||||
<primary sortas="b-uic-qt5">uic-qt5</primary>
|
||||
<primary sortas="b-uic-qt5">uic</primary>
|
||||
</indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
64
xincludes/qt-alternatives.xml
Normal file
64
xincludes/qt-alternatives.xml
Normal file
@ -0,0 +1,64 @@
|
||||
<?xml version="1.0" encoding="ISO-8859-1"?>
|
||||
<!DOCTYPE note PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
|
||||
<!ENTITY % general-entities SYSTEM "../general.ent">
|
||||
%general-entities;
|
||||
]>
|
||||
|
||||
<!-- $LastChangedBy: $
|
||||
$Date: $ -->
|
||||
|
||||
<sect2>
|
||||
<title>Qt Installation Alternatives</title>
|
||||
|
||||
<para>The installation of <application>Qt</application> presents
|
||||
several challenges and choices. Complicating the Qt installation is the fact
|
||||
that there are two versions, <application>Qt4</application> and
|
||||
<application>Qt5</application>, that have executable programs with
|
||||
identical names. If both packages are installed on one system,
|
||||
the only methods to manage which set of programs is used is to
|
||||
either control the users' <envar>PATH</envar> or to rename files
|
||||
either directly or via symbolic links. Both packages cannot
|
||||
be installed in the same directory.
|
||||
</para>
|
||||
|
||||
<para>If you are only going to install one of the Qt versions,
|
||||
the choice of installation methods is easier. You can either
|
||||
install the components in the several directories of the <filename
|
||||
class='directory'>/usr</filename> hierarchy or install the
|
||||
entire package in a separate directory of your choice. We
|
||||
refer to these options below as "Method 1: Installing in /usr"
|
||||
and "Method 2: Installing in /opt".</para>
|
||||
|
||||
<para>If both versions of Qt are to be installed, one or both versions need
|
||||
to be installed in a separate directory. For the purposes here we use the
|
||||
<filename class='directory'>/opt</filename> directory. The selection of
|
||||
which version is being used by individual users on a system is controlled
|
||||
by the <envar>PATH</envar> variable. Other systems can be designed, but
|
||||
the BLFS editors find the <envar>PATH</envar> method easiest.</para>
|
||||
|
||||
<para> The advantage of installing in <filename
|
||||
class='directory'>/usr</filename> is that no updates to the
|
||||
<filename>/etc/ld.so.conf</filename> or
|
||||
<filename>/etc/man_db.conf</filename> files are required. The package files
|
||||
are distributed within several subdirectories of the <filename
|
||||
class='directory'>/usr</filename> hierarchy. This is the method that most
|
||||
commercial distributions use. The disadvantage for BLFS users is that this
|
||||
Qt instance cannot be upgraded while it is in use. For instance, it cannot
|
||||
be upgraded from a running KDE environment. It also precludes having
|
||||
multiple versions of Qt on your system and does not allow reverting to
|
||||
an existing, known working instance of Qt.</para>
|
||||
|
||||
<para> The advantage of installing <application>Qt</application> in a
|
||||
custom directory such as
|
||||
<filename class='directory'>/opt/qt-&qt4-version;</filename> or
|
||||
<filename class='directory'>/opt/qt-&qt5-version;</filename> or
|
||||
is that it keeps all the
|
||||
package files consolidated in a dedicated directory hierarchy. By using
|
||||
this method, an update can be made without overwriting a previous
|
||||
installation and users can easily revert to a previous version by changing
|
||||
one symbolic link or merely changing the PATH variable. It also allows a
|
||||
developer to maintain multiple versions of <application>Qt4</application>
|
||||
or <application>Qt5</application> for testing. </para>
|
||||
|
||||
</sect2>
|
37
xincludes/setqt.xml
Normal file
37
xincludes/setqt.xml
Normal file
@ -0,0 +1,37 @@
|
||||
<?xml version="1.0" encoding="ISO-8859-1"?>
|
||||
<!DOCTYPE note PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
|
||||
<!ENTITY % general-entities SYSTEM "../general.ent">
|
||||
%general-entities;
|
||||
]>
|
||||
|
||||
<!-- $LastChangedBy: $
|
||||
$Date: $ -->
|
||||
|
||||
<sect3>
|
||||
<title>Choosing Qt Program Versions</title>
|
||||
|
||||
<para>If you install both Qt4 and Qt5, you can use some simple
|
||||
scripts to select the currently active set of Qt programs. As the
|
||||
<systemitem class="username">root</systemitem> user, create
|
||||
the following scripts:</para>
|
||||
|
||||
<screen role="root"><userinput>cat > /usr/bin/setqt4 << 'EOF'
|
||||
<literal>if [ "x$QT5DIR" != "x/usr" ]; then pathremove $QT5DIR/bin; fi
|
||||
if [ "x$QTDIR" != "x/usr" ]; then pathprepend $QTDIR/bin; fi
|
||||
echo $PATH</literal>
|
||||
EOF</userinput></screen>
|
||||
|
||||
<screen role="root"><userinput>cat > /usr/bin/setqt5 << 'EOF'
|
||||
<literal>if [ "x$QTDIR" != "x/usr" ]; then pathremove $QTDIR/bin; fi
|
||||
if [ "x$QT5DIR" != "x/usr" ]; then pathprepend $QT5DIR/bin; fi
|
||||
echo $PATH</literal>
|
||||
EOF</userinput></screen>
|
||||
|
||||
<para>You should now be able to use the appropriate Qt version by running
|
||||
<command>source setqt4</command> or <command>source setqt4</command> as
|
||||
desired. (Setting the PATH wont work in a subshell.) Another technique that
|
||||
can be used is to create appropriate alias additions to your ~/.bashrc like
|
||||
<command>alias setqt4='source setqt4'</command>.</para>
|
||||
|
||||
</sect3>
|
Loading…
Reference in New Issue
Block a user