# Installation

Linus Torvalds, after finding one of his file systems smashed by a new Beta kernel

Core dumping fsck's tend to make me nervous

Don't worry! Although the use of some Beta software can cause considerable grief, it is unlikely that the installation of KDE will trash your hard disk. In fact, this chapter is designed to guide you through the installation process, so that you can take a look at your new desktop as quickly (and with as little grief) as possible. As with all new Window Manager installs, it is recommended that you back up all your X11-specific configuration files before you begin the install. If you do not know the exact location of them, try all the hidden (`.*`) files in your home directory and the directory `/usr/X11/lib/X11/xdm`.

## Requirements

Before installing KDE, ascertain that your system fulfills the following requirements:

- A running POSIX compatible UNIX system. UNIX's that are known to work with KDE include: Linux, FreeBSD, Solaris, HP-UX, and MkLinux. We are working to make KDE available for more platforms soon.

- Some free hard disk space on the partition where `/opt/kde` will be created. We recommend that you reserve about 50MB if your system supports shared libraries, and considerably more if it does not. If you need or want to build KDE from the source tree, please remember to reserve about 100MB in `/usr/src`.

- A running X11 system with or without xdm. If you have not installed the X Window System yet, first check your UNIX installation media for an installable version. If you cannot find any version working, visit the XFree86 web site for more information on how to get and install the X Window System, or contact your UNIX vendor support.

- The Qt libraries, version 3.0.2. You can obtain these at Troll Tech's FTP Server in tgz format.

A warning before you start: Before upgrading from a previous version of KDE, we recommend that you do the following:

    cd /opt/kde
    tar cfvz ~/KDE-old-version-backup.tar.gz *

## Linux: Installing RPMs for RedHat, Caldera and SuSE.

Using RPMs is the easiest method to get KDE up and running. Just visit your favourite KDE mirror and visit the directory `/pub/kde/stable/distribution/rpm`. There, you can see directories for different operating systems. Currently, the i386, alpha and sparc architectures are supported. The RPM packages can also be found on the Red Hat contrib sites like sunsite.unc.edu or ftp.redhat.com.

The basic system consists of the files `kde-component.architecture.rpm` You need at least kdesupport, kdelibs and kdebase. After getting the base distribution, feel free to download any other RPMs that you think may come in handy.

Next, start installing with the base package. If you are installing KDE for the first time, use

    rpm -i kdesupport.arch.rpm
    rpm -i kdelibs.arch.rpm
    rpm -i kdebase.arch.rpm

It is important that these components are installed in the order listed, and that they are installed before any other KDE component.

If you are upgrading from a previous release, try

    rpm -Uvh kde-component.arch.rpm

Once again, the order given above should be preserved, and the given components should be installed before any other KDE components.

This will unpack the base distribution and install it by default in `/opt/kde`.

If the installation of the base packages has been successful, you can install the remaining packages (use `-Uvh` instead of `-i` once again to update an existing version) the same way.

## Linux: Installing DEBs for debian

The installation for a Debian system is also rather straightforward. You will only find KDE 2.0 packages for Debian 2.2 (Potato) and 3.0 (Woody). We describe here how to install packages for Debian 2.2, the stable version, since Debian 3.0 is still in development. However, the installation for both versions, is almost identical. The main difference is that KDE is officially included in Debian 3.0 and you do not need to specify any special location to find the deb packages for KDE.

The first step is to tell your system where it can find the deb packages for KDE. A list of locations for the Debian packages is kept on your hard disk in `/etc/apt/sources.list`. You should add to that file the following line: `http://kde.tdyc.com/ stable kde2`

Then you have to update your local package database so that your system knows that there are new packages available. Type the following command:

    apt-get update

Finally you should install the KDE base components. This is accomplished by typing:

    apt-get install kdebase

If you want to install other components you should try some, or all of these options:

    apt-get install task-kdenetwork
    apt-get install task-kdeadmin
    apt-get install task-kdetoys
    apt-get install task-kdeutils
    apt-get install task-kdemultimedia
    apt-get install task-kdegraphics
    apt-get install task-kdepim
    apt-get install task-kdegames
    apt-get install task-koffice
    apt-get install kdebase-docs
    apt-get install kdm

You may also be interested in installing your language.

    apt-get install
    kde-i18n-xx

where xx has to be substituted by the country code.

The control files for some KDE applications will be placed at `/etc/kde2`, the executables will go in `/usr/bin` and most of the auxiliary files in `/usr/share` under different directories.

If you are upgrading from a previous version of KDE you should perform the following steps. First, update file `/etc/apt/sources.list` by changing the line with the location of KDE packages with line: `http://kde.tdyc.com/ stable kde2`. Second update your package database:

    apt-get update

Finally install the KDE base system:

    apt-get install kdebase
    apt-get dist-upgrade

If you want to install more KDE components try some, or all of these options.

    apt-get install task-kdenetwork
    apt-get install task-kdeadmin
    apt-get install task-kdetoys
    apt-get install task-kdeutils
    apt-get install task-kdemultimedia
    apt-get install task-kdegraphics
    apt-get install task-kdepim
    apt-get install task-kdegames
    apt-get install task-koffice
    apt-get install kdebase-docs
    apt-get install kdm

## Using Source Compilation to Install on Top of Other Systems

If your Linux distribution did not come with an RPM or DEB archive format, or you are not using Linux at all, you must compile KDE on your own. In the future, we are planning to provide a binary distribution which includes its own installation program.

In order to compile and install KDE properly, you need to have the following items installed on your hard disk:

- An ANSI-C compiler, e.g. the GNU C compiler.

- An ANSI-C++ compiler, e.g. GNU C++.

- The make utility.

- Qt development version 2.2 or higher.

- X11 development version (include files are often missing)

Once you have all the required helper applications, go to your favourite KDE mirror and retrieve the following files from the directory `/pub/kde/stable/newest version`:

- `kdesupport-version.tar.gz`

- `kdelibs-version.tar.gz`

- `kdebase-version.tar.gz`

- any other packages you wish to install. We advise you to get at least kdeutils.

In all cases above, version stands for the current version number. Once you have downloaded all you need, extract these files to `/usr/src`. This process should yield the following directory structure:

- `/usr/src/kdesupport`

- `/usr/src/kdelibs`

- `/usr/src/kdebase`

- `/usr/src/...` (any other packages)

Make sure you have write permissions to `/opt/kde`.

Next you must compile and install the packages using the following:

1. `cd` into the directory of the package, you want to install (see above)

2. `./configure` (with the options you want to apply)

3. `make`

4. `make install`

Apply the above steps to every package you want to install.

These instructions can be used for almost every source package available, not just KDE packages.

Every configure script has several options available. Some are common between the packages while others are specific to an individual package. The following is part of the result of `configure `--help`` in kdelibs:

      --disable-fast-perl     disable fast Makefile generation (needs perl)
      --enable-debug          creates debugging code [default=no]
      --enable-strict         compiles with strict compiler options (may not work!)
      --enable-profile        creates profiling infos [default=no]
      --enable-final          build size optimized apps (experimental - needs lots of memory)
      --disable-closure       don't delay template instantiation
      --enable-shared[=PKGS]  build shared libraries [default=yes]
      --enable-static[=PKGS]  build static libraries [default=no]
      --enable-fast-install[=PKGS]  optimize for fast installation [default=yes]
      --with-gnu-ld           assume the C compiler uses GNU ld [default=no]
      --disable-libtool-lock  avoid locking (might break parallel builds)
      --with-pic              try to use only PIC/non-PIC objects [default=use both]
      --with-extra-includes=DIR
                              adds non standard include paths
      --with-extra-libs=DIR   adds non standard library paths
      --with-qt-dir=DIR       where the root of Qt is installed
      --with-qt-includes=DIR  where the Qt includes are.
      --with-qt-libraries=DIR where the Qt library is installed.
      --disable-rpath         do not use the rpath feature of ld
      --disable-path-check    don't try to find out, where to install
      --with-xdmdir           If the xdm config dir can't be found automaticly
      --with-pam[=ARG]        enable support for PAM: ARG=[yes|no|service name]
      --with-shadow           If you want shadow password support
      --with-krb4[=PATH]      Compile in Kerberos v4 support.
      --with-afs              Compile in AFS support (requires KTH krb4).
      --with-ldap[=PATH]      Compile in LDAP support.
      --with-samba-libs=path  Use Samba-tng libs in 'path'                [search]
      --without-gl            disable 3D GL modes
      --without-xpm           disable color pixmap XPM tests
      --without-dpms          disable DPMS power saving
      --with-x                use the X Window System
      --with-motif-includes=DIR    Motif include files are in DIR
      --with-motif-libraries=DIR   Motif libraries are in DIR

Several options are not required and are only useful as work arounds for known problems (e.g. `--disable-FEATURE`). Since some are important options, for instance --with-shadow, you should always check the available options.

An important option is `--prefix`. This option specifies the path where configure should install (for kdesupport and kdelibs) or where to look for libraries (for the other packages). By default, configure will look in `/opt/kde` . If you want to install KDE into `/usr/local/kde`, you have to use `configure `--prefix /usr/local/kde``.

If you have installed the Qt libraries in an uncommon place, for instance in `$HOME/src/qt`, you must use `configure `--with-qt-dir=$HOME/src/qt``. By default configure looks in the most common places for Qt before it gives up.

If you have problems that you are not able to solve, send a copy of the `config.log` file to the address given in the offending package's `README` file.

You must install KDE in the following order: kdesupport, kdelibs, then the application packages (for example kdebase). All the application packages should only depend on kdelibs, so you can compile them at the same time (if you have a powerful machine).

If you want to take advantage of multiprocessor systems, try `make `-j Number of processors`` instead of `make`.

### Platform Specific Building Notes

#### Linux

For Linux, most of the utilities needed to build KDE can be found either at ftp://sunsite.unc.edu/pub/Linux/GCC or ftp://sunsite.unc.edu/pub/GNU. The Qt libraries can be found at ftp://ftp.troll.no/pub/qt/source, available as source code. Detailed instructions on how to install them are provided. Include files for X11 programs should be available at ftp://ftp.xfree86.org in the xdevel section.

## Required Changes To Your Configuration Files

After you have placed the KDE binaries into their destination directory, there are a few adjustments you must make to your startup scripts.

The following procedure was tested on SuSE Linux 5.0, and should be compatible with the other popular UNIX's as well. Always make backups of configuration files before changing them! Add the following to the end of your /etc/profile:

    export PATH=$PATH:/opt/kde/bin
    export KDEDIR=/opt/kde

Next, edit the .xinitrc file in your home directory. Look for the line that calls your window manager and replace it with `startkde`.

Now that everything needed to run KDE has been installed, you can go on to chapter 4 where you will start KDE for the first time. If something goes wrong, you may need to compile KDE on your own. Read Using Source Compilation to Install on Top of Other Systems for more information.

We have made the installation as bulletproof as possible, so you should not encounter any serious problems unless your configuration is exotic. If you do experience difficulties feel free to use the KDE mailing lists