|Tutorial Series||Getting Started|
|Further Reading||The KDE From Subversion Build Tool|
This page is accurate as of 2008-07-19 for building KDE stable 3.5.9 (please report problems to kde-devel if they do not work for the latest stable 3.5.x). Other pages containing similar information are being consolidated to here. Similar pages include:
The old stable version of KDE stable is 3.5.10 (current stable version is a 3.4 branch as of 2009/11/20). You will want to build KDE stable if you are a maintainer for an OS distribution. Otherwise, you may want to install KDE stable using the tools provided by your OS distribution or vendor.
The recommended way to install KDE stable used to be Konstruct, a build system which helped you to install KDE releases and applications on your system. It downloads defined source tarballs, checks their integrity, decompresses, patches, configures, builds and installs them. A complete KDE installation should be as easy as "cd meta/kde;make install".
By default Konstruct installs to your home directory, which means you don't have to possess root privileges or risk to damage your system or affect another KDE.
Currently it does not work and is not maintained any more.
To compile KDE you need:
- Qt 3.3.2 or newer
- a C++ compiler which supports exceptions, preferably a recent gcc 3.x release. gcc 2.95.x is still working.
- bunzip2 to decompress .bz2 files. You can find it here. Get libbz2 while you're at it, it enables reading of .tar.bz2 files in konqueror, and one day, will give access to .bz2 files to all KDE applications.
- If you want SSL support (for instance for secure web sites in konqueror), make sure you install openssl, version 0.9.6 or later (versions 0.9.5x are not supported).
- For the KDE help system, you'll need to install libxml2, version 2.3.13 or newer.
- pkg-config, to help find installed software.
- There are additional modules that are compiled if the required library is present, but they aren't critical to run KDE. For instance, libldap for the LDAP kioslave, and cdparanoia for the audiocd kioslave. A more detailed list of requirements is available in the KDE 3.5 Requirements List
In order to run KDE applications, you need the Qt, arts, and kdelibs packages. For a simple desktop (with a window manager, panel, etc), you will also need kdebase. The other packages contain many other applications by topic: networking, graphics, multimedia, games, utilities, toys, software development, etc.
You can find the Qt library (qt-x11-free-3.3.8) from ftp://ftp.trolltech.com/qt/source/
KDE 3.5.x is available from ftp://download.kde.org/pub/kde/stable/
Unlike most compiled software, Qt is compiled in the place where it will stay instead of using a make install. Please read the INSTALL instructions in the Qt package. You need to set the environment variables $QTDIR and $KDEDIR to the locations where Qt and KDE will be installed, respectively. Also, append $QTDIR/bin and $KDEDIR/bin to your $PATH and $QTDIR/lib and $KDEDIR/lib to $LD_LIBRARY_PATH. Alternatively, instead of using $LD_LIBRARY_PATH, you may add your Qt and KDE library paths to /etc/ld.so.conf, but don't forget to run ldconfig as root after installing Qt and kdelibs, otherwise configure scripts will fail to find the newly installed libraries!
If your distribution sets $XDG_DATA_DIRS and/or $XDG_CONFIG_DIRS you will want to update them to include the correct $KDEDIR/share/ resp. $KDEDIR/etc/xdg/
bunzip2 qt-x11-3.3.8.tar.bz2 tar xvf qt-x11-3.3.8.tar cd qt-x11-3.3.8 less INSTALL # Set up QTDIR, KDEDIR, PATH, LD_LIBRARY_PATH, # XDG_DATA_DIRS and XDG_CONFIG_DIRS cd $QTDIR ./configure -system-zlib -qt-gif -system-libpng \ -system-libjpeg -plugin-imgfmt-mng -thread -no-stl \ -no-xinerama -no-g++-exceptions make
Note that -thread is required (KDE will not run or even compile if you omit it), that -no-xinerama is only if you're not using xinerama, and -no-g++-exceptions is strongly recommended if you're using gcc.
Make sure to compile and install arts first, and afterwards kdelibs and then kdebase before any other packages. Also, if you want to use kdeaddons, it should be compiled last as it requires kdebase, kdemultimedia, etc.
For each KDE package:
bunzip2 <package>.tar.bz2 tar xvf <package>.tar cd <package> ./configure make make install
- If you get an error like
uic: File generated with too old version of Qt Designer
to find out with which version of the UI compiler you are working. For KDE 3.5 and koffice 1.6 you will need a 3.x version.
- If compiling on a system where GNU make is not the default make (that is, most systems other than Linux), please run gmake && gmake install instead of make && make install.
- All packages mentioned here have to be compiled with the same compiler!
- See the KDE 3.5.9 Info Page for some common encountered problems when running KDE 3.5.9.