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

    From KDE TechBase
    m (add to category 'Build KDE')
    No edit summary
    (31 intermediate revisions by 16 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 <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.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


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


        bunzip2 qt-x11-3.3.6.tar.bz2
    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.
        tar xvf qt-x11-3.3.6.tar
        cd qt-x11-3.3.6
        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.
    For each KDE package:
    bunzip2 <package>.tar.bz2
    tar xvf <package>.tar
    cd <package>
    ./configure
    make
    make install


    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.
    === TroubleShooting ===


    For each KDE package:3
    * If you get an error like
        bunzip2 <package>.tar.bz2
    uic: File generated with too old version of Qt Designer
        tar xvf <package>.tar
    try
        cd <package>
    which uic
        ./configure
    and
        make
    uic -v
        make install
    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:Build KDE]]
    [[Category:KDE3]]
    [[Category:KDE3]]

    Revision as of 18:42, 12 July 2012

    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.