Getting Started/Build/Historic/KDE 3.5: Difference between revisions

From KDE TechBase
(fixed lists)
 
(36 intermediate revisions by 19 users not shown)
Line 1: Line 1:
{{TutorialBrowser|
series=Getting Started|
name=Building KDE3 From Source|
reading=[http://kdesvn-build.kde.org/ The KDE From Subversion Build Tool]
}}
===Status===
===Status===
This page is accurate as of 2006-08-08 for building KDE stable 3.5.4. Other pages contain similar information are are being consolidated to here. Similar pages include:
This page is accurate as of 2008-07-19 for building KDE stable 3.5.9 (please report problems to [mailto:[email protected] 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:
* http://quality.kde.org/develop/cvsguide/buildstep.php
* http://quality.kde.org/develop/cvsguide/buildstep.php


===KDE Stable===
===KDE Stable===
The current version of KDE stable is 3.5.4. 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 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 current recommended way to install KDE stable is Konstruct, a build system which helps 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".
The recommended way to install KDE stable used to be [[Getting Started/Build/Konstruct|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.
By default [[Getting Started/Build/Konstruct|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 gives a complete KDE 3.5.4 installation. Optionally you can install additional applications like KOffice 1.5.2 or KDevelop 3.3.4.  
'''Currently it does not work and is not maintained any more.'''


===Compiling Yourself===
===Compiling Yourself===


The following instructions describe how to build KDE 3.5.x yourself, e.g. without using Konstruct or kdesvn-build.
The following instructions describe how to build KDE 3.5.x yourself, i.e. without using [[Getting Started/Build/Konstruct|Konstruct]] or [http://kdesvn-build.kde.org/ kdesvn-build].


==Requirements==
==Requirements==
Line 21: Line 30:
* Qt 3.3.2 or newer
* 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.
* 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.
* <tt>bunzip2</tt> 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).
* If you want SSL support (for instance for secure web sites in konqueror), make sure you install <tt>openssl</tt>, version 0.9.6 or later (versions 0.9.5x are not supported).
* For a better regular-expressions support in Javascript, install libpcre.
* For a better regular-expressions support in Javascript, install <tt>libpcre</tt>.
* For the KDE help system, you'll need to install libxml2, version 2.3.13 or newer.
* For the KDE help system, you'll need to install <tt>libxml2</tt>, 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
* 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


Line 30: Line 40:
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.
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 (version 3.3.6) at ftp://ftp.trolltech.com/qt/source/
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/
KDE 3.5.x is available from ftp://download.kde.org/pub/kde/stable/


==Installation==
==Installation==
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 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 $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!
Unlike most compiled software, Qt is compiled in the place where it will stay instead of using a <tt>make install</tt>. Please read the INSTALL instructions in the Qt package. You need to set the environment variables <tt>$QTDIR</tt> and <tt>$KDEDIR</tt> to the locations where Qt and KDE will be installed, respectively. Also, append $QTDIR/bin and $KDEDIR/bin to your <tt>$PATH</tt> and $QTDIR/lib and $KDEDIR/lib to <tt>$LD_LIBRARY_PATH</tt>. Alternatively, instead of using <tt>$LD_LIBRARY_PATH</tt>, you may add your Qt and KDE library paths to {{path|/etc/ld.so.conf}}, but don't forget to run <tt>ldconfig</tt> 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/
If your distribution sets <tt>$XDG_DATA_DIRS</tt> and/or <tt>$XDG_CONFIG_DIRS</tt> you will want to update them to include the correct $KDEDIR/share/ resp. $KDEDIR/etc/xdg/


    bunzip2 qt-x11-3.3.6.tar.bz2
bunzip2 qt-x11-3.3.8.tar.bz2
    tar xvf qt-x11-3.3.6.tar
tar xvf qt-x11-3.3.8.tar
    cd qt-x11-3.3.6
cd qt-x11-3.3.8
    less INSTALL
less INSTALL
    (Set up QTDIR, KDEDIR, PATH, LD_LIBRARY_PATH, XDG_DATA_DIRS and XDG_CONFIG_DIRS)
# Set up QTDIR, KDEDIR, PATH, LD_LIBRARY_PATH,
    cd $QTDIR
# XDG_DATA_DIRS and XDG_CONFIG_DIRS
    ./configure -system-zlib -qt-gif -system-libpng \
cd $QTDIR
    -system-libjpeg -plugin-imgfmt-mng -thread -no-stl \
./configure -system-zlib -qt-gif -system-libpng \
    -no-xinerama -no-g++-exceptions
    -system-libjpeg -plugin-imgfmt-mng -thread -no-stl \
    make
    -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.
Note that <tt>-thread</tt> is required (KDE will not run or even compile if you omit it), that <tt>-no-xinerama</tt> is only if you're not using xinerama, and <tt>-no-g++-exceptions</tt> is strongly recommended if you're using gcc.


Make sure to compile and install first arts, and afterwards kdelibs before any other packages. Also, if you want to use kdeaddons, it should be compiled last as it requires kdebase, kdemultimedia, etc.
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:
For each KDE package:
bunzip2 <package>.tar.bz2
tar xvf <package>.tar
cd <package>
./configure
make
make install


    bunzip2 <package>.tar.bz2
=== TroubleShooting ===
    tar xvf <package>.tar
 
    cd <package>
* If you get an error like
    ./configure
uic: File generated with too old version of Qt Designer
    make
try
    make install
which uic
and
uic -v
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.


==Notes==
==Notes==


* 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'.
* If compiling on a system where GNU make is not the default make (that is, most systems other than Linux), please run <tt>gmake && gmake install</tt> instead of <tt>make && make install</tt>.
* All packages mentioned here have to be compiled with the same compiler!
* All packages mentioned here have to be compiled with the same compiler!
* See the [http://www.kde.org/info/3.5.4.php|KDE 3.5 Info Page] for some common encountered problems when running KDE 3.5.
* See the [http://www.kde.org/info/3.5.9.php KDE 3.5.9 Info Page] for some common encountered problems when running KDE 3.5.9.
 
[[Category:Build KDE]]
[[Category:KDE3]]

Latest revision as of 19:52, 10 March 2016

Building KDE3 From Source
Tutorial Series   Getting Started
Previous   None
What's Next   n/a
Further Reading   The KDE From Subversion Build Tool

Status

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:

KDE Stable

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.

Compiling Yourself

The following instructions describe how to build KDE 3.5.x yourself, i.e. without using Konstruct or kdesvn-build.

Requirements

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 a better regular-expressions support in Javascript, install libpcre.
  • 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

Download

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/

Installation

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

TroubleShooting

  • If you get an error like
uic: File generated with too old version of Qt Designer

try

which uic

and

uic -v

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.

Notes

  • 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.