Getting Started/Build/Example

    From KDE TechBase

    Example Build

    The following example recipe shows the full sequence of commands you would need to enter into the command line to build a typical KDE module:

    cd ~/kde-devel/src
    git clone git://anongit.kde.org/kdelibs.git
    mkdir ~/kde-devel/build/kdelibs
    cd ~/kde-devel/build/kdelibs
    cmake ~/kde-devel/src/kdelibs \
          -DCMAKE_BUILD_TYPE=debugfull \
          -DCMAKE_INSTALL_PREFIX=$KDEDIR
    make
    make install
    

    Let's break that recipe down and explain each step.

    Source

    First you navigate to a convenient folder to save the code in:

    cd ~/kde-devel/src
    

    Then request a copy of the code from the KDE source repository, in this example a copy of kdelibs from Git:

    git clone git://anongit.kde.org/kdelibs.git
    

    This may take some time to process. For Git you will see out output similar to:

    myuser@mybox:~/kde-devel/src> git clone git://anongit.kde.org/kdelibs.git
    git://anongit.kde.org/kdelibs.git
    Initialized empty Git repository in /home/myuser/kde-devel/src/kdelibs/.git/
    remote: Counting objects: 722134, done.
    remote: Compressing objects: 100% (138759/138759), done.
    remote: Total 722134 (delta 586243), reused 715797 (delta 580373)
    Receiving objects: 100% (722134/722134), 140.90 MiB | 706 KiB/s, done.
    Resolving deltas: 100% (586243/586243), done.
    myuser@mybox:~/kde-devel/src> 
    

    This example will create a folder called ~/kde-devel/src/kdelibs containing all the kdelibs source code and all its history since KDE began.

    For an SVN checkout you will instead see output similar to:

    myuser@mybox:~/kde-devel/src> svn checkout svn://anonsvn.kde.org/home/kde/trunk/KDE/kdesdk
    A    kdesdk/cmake
    A    kdesdk/cmake/samples
    A    kdesdk/cmake/samples/kpager
    A    kdesdk/cmake/samples/kpager/CMakeLists.txt
    ...
    A    kdesdk/COPYING.LIB
    U   kdesdk
    Checked out revision 1223739.
    myuser@mybox:~/kde-devel/src> 
    

    Configure

    First you create a convenient folder to build the code in:

    mkdir ~/kde-devel/build/kdelibs
    cd ~/kde-devel/build/kdelibs
    

    Next you need to run CMake to create the configuration files to be used in the build:

    cmake ~/kde-devel/src/kdelibs \
          -DCMAKE_BUILD_TYPE=debugfull \
          -DKDE4_BUILD_TESTS=TRUE \
          -DCMAKE_INSTALL_PREFIX=$KDEDIR
    

    Various options can be passed to CMake to control how a project gets built, but these are the most common:

    • The first line tells CMake where it can find the source code that is to be built.
    • The second line tells CMake what type of build is required, in this example a debugfull build that will include useful information for when we are debugging any the software.
    • The third line tells CMake we also want the unit tests to be built.
    • The fourth line tells CMake where to install the software.

    Build

    Update