glfs/kde4/intro/pre-install-config.xml
Bruce Dubbs 8bc3edae92 Added jfsutils-1.1.15.
Updated to xfsprogs-3.1.7.

Renamed device mapper to lvm2 and changed
the instructions to do a full lvm2 installation. 
Moved lvm2 to the filesystems chapter.


git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@9190 af4574ff-66df-0310-9fd7-8a98e5e911e0
2012-01-20 19:25:30 +00:00

358 lines
12 KiB
XML

<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE sect1 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;
]>
<sect1 id="kde4-pre-install-config">
<?dbhtml filename="pre-install-config.html"?>
<sect1info>
<othername>$LastChangedBy$</othername>
<date>$Date$</date>
</sect1info>
<title>KDE4 Pre-installation Configuration</title>
<sect2><title>Dependencies</title>
<para><application>KDE4</application> is a huge software collection
providing a desktop, tools for system and development tasks, and fun and
educational programs. It makes use of a tremendous amount of non-KDE
packages. While nearly all of those packages are optional, some others are
are highly recommended.</para>
<para>The following list of packages should give you an overview about
those packages and you may want to consider installing them first.
Installing these packages will enable some useful features in the resulting
<application>KDE4</application> suite. Nevertheless the dependencies are
shown on each of the following pages.
<itemizedlist>
<listitem>
<para><ulink url="http://qjson.sourceforge.net">QJSON</ulink>
(http://qjson.sourceforge.net) - Qt library for handling JavaScript
objects. Unfortunatly, the release version 0.7.1 is to old to compile.
Alternativly use the current SVN sources or apply a patch to bring the
release to a usable status.</para>
<para>Compile it using <command>cmake -DCMAKE_INSTALL_PREFIX=/usr
&amp;&amp; make &amp;&amp; make install</command> in its own build
directory.</para>
</listitem>
<listitem>
<para><ulink url="http://gpsd.berlios.de/">libgps</ulink>
(http://gpsd.berlios.de/) - interface to GPS devices (kdeedu)</para>
<para>Compile it the usual way <command>configure &amp;&amp; make
&amp;&amp; make install</command>.</para>
</listitem>
<listitem>
<para><ulink url="http://eigen.tuxfamily.org/">eigen2</ulink>
(http://eigen.tuxfamily.org/) - a C++ template library for linear
algebra</para>
<para>Compile it using <command>cmake -DCMAKE_INSTALL_PREFIX=/usr
&amp;&amp; make &amp;&amp; make install</command>.</para>
</listitem>
<listitem>
<para><xref linkend="desktop-file-utils"/> - a few command line
utilities for working with desktop entries</para>
</listitem>
<listitem>
<para><ulink
url="http://www.riverbankcomputing.com/software/sip/intro">pySIP</ulink>
(http://www.riverbankcomputing.com/software/sip/intro) - Python Service
Integration Platform</para>
<para>Compile it <command>python ./configure &amp;&amp; make &amp;&amp;
make install</command>.</para>
</listitem>
<listitem>
<para><ulink
url="http://www.riverbankcomputing.com/software/pyqt/">pyQT4</ulink>
(http://www.riverbankcomputing.com/software/pyqt/) - Python interface
to Qt4 (kdebindings)</para>
<para>Compile it <command>python ./configure &amp;&amp; make &amp;&amp;
make install</command>.</para> </listitem>
<listitem>
<para><xref linkend="ruby"/> - Ruby language (kdebindings)</para>
</listitem>
<listitem>
<para><xref linkend="poppler"/> - Utility and library to show PDF files
(kdegraphics)</para>
<para>make sure the --enable-xpdf-headers switch is set</para>
</listitem>
<listitem>
<para><xref linkend="libical"/> - library handling calendar entries
(kdepimlibs)</para>
</listitem>
<listitem>
<para><ulink url="http://cyberelk.net/tim/data/pycups/">pyCUPS</ulink>
(http://cyberelk.net/tim/data/pycups/) - Python interface to CUPS
(kdeadmin)</para>
<para>Compile it with <command>make &amp;&amp; make
install</command>.</para>
</listitem>
<listitem>
<para><ulink
url="http://cyberelk.net/tim/data/system-config-printer/">system-config-printer</ulink>
(http://cyberelk.net/tim/data/system-config-printer/) - Printer config
(kdeadmin)</para>
<para>Compile it the usual way <command>configure &amp;&amp; make
&amp;&amp; make install</command>.</para>
</listitem>
<listitem>
<para><xref linkend="libidn"/> - en-/decode internationalized domain
names (kdenetwork)</para>
</listitem>
<listitem>
<para><xref linkend="polkit"/> - Policy handling (nearly all of
KDE)</para>
</listitem>
<listitem>
<para><xref linkend="consolekit"/> - Runtime dependency of
polkit</para>
</listitem>
<listitem>
<para>U-tools - udisks and upower instead of HAL</para>
<para>and all of its dependencies:
<xref linkend="libatasmart"/>,
<xref linkend="sg3_utils"/>,
<xref linkend="libffi"/>,
<xref linkend="acl"/>,
<xref linkend="gobject-introspection"/>,
<xref linkend="udev"/>,
<xref linkend="lvm2"/>,
<xref linkend="parted"/> and than
<xref linkend="udisks"/> and
<xref linkend="upower"/>
</para>
</listitem>
<listitem>
<para><xref linkend="libiodbc"/> - iODBC library</para>
</listitem>
<listitem>
<para><xref linkend="virtuoso"/> - a Universal Database</para>
</listitem>
<listitem>
<para><xref linkend="exiv2"/> - Image data processing library</para>
</listitem>
<listitem>
<para>RDF tools - Handling of RDF data</para>
<para>Including: <xref linkend="raptor"/>, <xref linkend="rasqal"/> and
<xref linkend="redland"/></para>
</listitem>
<listitem>
<para><xref linkend="clucene"/> - Text search engine</para>
</listitem>
<listitem>
<para><xref linkend="boost"/> - collection of free C++ libraries</para>
</listitem>
<listitem>
<para><xref linkend="qca"/> - Cryptographic library for Qt
platform</para>
</listitem>
<listitem>
<para><xref linkend="libdbusmenu-qt"/> - Qt interface to D-Bus
menue</para>
</listitem>
<listitem>
<para><xref linkend="soprano"/> - object-oriented C++/Qt4 framework for
RDF data</para>
</listitem>
<listitem>
<para><xref linkend="strigi"/> - Desktop indexing engine</para>
</listitem>
<listitem>
<para><ulink url="http://www.grantlee.org">Grantlee</ulink>
(http://www.grantlee.org) - a template system for Qt</para>
<para>Compile it using <command>cmake -DCMAKE_INSTALL_PREFIX=/usr
&amp;&amp; make &amp;&amp; make install</command> in its own build
directory.</para>
</listitem>
</itemizedlist>
</para>
</sect2>
<sect2><title>Installing in /usr</title>
<para>One option is to put <application>KDE4</application> into the
<filename class='directory'>/usr</filename> hierarchy. This creates a
simpler setup but is more difficult to try multiple versions of
<application>KDE4</application>.</para>
<screen><userinput>export &kde4-dir-var;=/usr</userinput></screen>
</sect2>
<sect2><title>Installing in /opt</title>
<para>A method of building multiple versions installs
<application>KDE4</application> in the <filename
class='directory'>/opt</filename> hierarchy:</para>
<screen><userinput>export &kde4-dir-var;=/opt/kde4</userinput></screen>
<para>If you are not installing <application>KDE4</application> in
<filename class="directory">/usr</filename>, you will need to make some
additional configuration changes. Best practice is to add those to your
system or personal profile:</para>
<screen><userinput>cat &gt; /etc/profile.d/kde4.sh &lt;&lt;"EOF"
# Begin /etc/profile.d/kde4.sh
&kde4-dir-var;=/opt/kde4
KDE4DIR=&kde4-dir;
KDEDIR=&kde4-dir;
pathappend &kde4-dir;/bin PATH
pathappend &kde4-dir;/lib/pkgconfig PKG_CONFIG_PATH
pathappend &kde4-dir;/share/pkgconfig PKG_CONFIG_PATH
pathappend &kde4-dir;/share XDG_DATA_DIRS
pathappend /etc/kde4/xdg XDG_CONFIG_DIRS
export KDE4_PREFIX KDE4DIR KDEDIR
# End /etc/profile.d/kde4.sh
EOF
</userinput></screen>
<para>Add to your <filename>/etc/ld.so.conf</filename>:</para>
<screen role="root"><userinput>cat &gt;&gt; /etc/ld.so.conf &lt;&lt; "EOF"
<literal># Begin kde4 addition to /etc/ld.so.conf
/opt/kde4/lib
# End kde4 addition</literal>
EOF</userinput></screen>
<indexterm zone="kde4-pre-install-config">
<primary sortas="e-etc-ld.so.conf">/etc/ld.so.conf</primary>
</indexterm>
<para>Add to your <filename>/etc/man_db.conf</filename>:</para>
<screen role="root"><userinput>cat &gt;&gt; /etc/man_db.conf &lt;&lt; "EOF"
<literal># Begin kde4 addition to man_db.conf
MANDATORY_MANPATH /opt/kde4/man
# End kde4 addition to man_db.conf</literal>
EOF</userinput></screen>
<indexterm zone="kde4-pre-install-config">
<primary sortas="e-etc-man_db.conf">/etc/man_db.conf</primary>
</indexterm>
<tip>
<para>Sometimes, the installation paths are coded into installed files.
This is the reason why <filename class="directory">/opt/kde4</filename>
is used as installation prefix instead of <filename
class="directory">/opt/kde-&kde4-version;</filename>. After installing
<application>KDE4</application>, you may rename the directory and create
a symlink:</para>
<screen role="root"><userinput>mv /opt/kde{4,-&kde4-version;} &amp;&amp;
ln -vsf kde-&kde4-version; /opt/kde4</userinput></screen>
<para>Later on, you may want to install other versions of
<application>KDE4</application>. To do that, just remove the symlink and
use <filename class="directory">/opt/kde4</filename> as ithe prefix again
(<application>KDE4</application> must not be started). Which version of
<application>KDE4</application> you use depends only on where the symlink
points to. No other reconfiguration will be needed.</para>
</tip>
</sect2>
<sect2><title>The QT4DIR variable</title>
<para>Some additional packages which are based on
<application>Qt4</application> will be installed. One of them is
<application>Phonon</application>, a direct replacement of the implementation
which comes with <application>Qt4</application>. It's recommended placing
such libraries in the same hierarchy where <application>Qt4</application>
itself resides. Later on, it is refered to as <envar>QT4DIR</envar>. If you have
placed <application>Qt4</application> in <filename
class='directory'>/usr</filename>, set <envar>QT4DIR</envar>:</para>
<screen><userinput>export QT4DIR=/usr</userinput></screen>
<para>Alternativly, <application>Qt4</application> is often placed in the
<filename class='directory'>/opt</filename> hierarchy:</para>
<screen><userinput>export QT4DIR=/opt/qt-&qt4-version;
export PATH=$QT4DIR/bin:$PATH</userinput></screen>
</sect2>
</sect1>