|
|
(768 intermediate revisions by 96 users not shown) |
Line 1: |
Line 1: |
| This article shows how to download, build, install and start KDE 4 from subversion. It consolidates howtos from various sites, e.g.
| | #REDIRECT [[Getting_Started/Build|Building KDE]] |
| [http://developer.kde.org/build/trunk.html the old KDE developer pages]. | |
| This topic shows one way that works. It does not intend to explain the obvious background behind it.
| |
| | |
| You may be interested in: http://kdesvn-build.kde.org/
| |
| | |
| To reduce complexity, we use the bash-shell (standard) throughout the tutorial.
| |
| | |
| == Become the user kde-devel ==
| |
| useradd kde-devel
| |
| mkdir /home/kde-devel
| |
| passwd kde-devel
| |
| chown kde-devel:kde-devel /home/kde-devel 2>/dev/null || \
| |
| chown kde-devel:users /home/kde-devel
| |
| | |
| Switch to the user kde-devel: (the dash also changes to the new home directory)
| |
| su - kde-devel
| |
| | |
| == Set Environment Variables ==
| |
| You have to add some environment variables - add these lines to your shell's configuration file, e.g. {{path|~/.bashrc}}.
| |
| export YACC='byacc -d'
| |
| export QTDIR=$HOME/qt-unstable
| |
| export KDEDIR=$HOME/kde
| |
| export KDEDIRS=$KDEDIR
| |
| export DBUSDIR=$KDEDIR
| |
| export PKG_CONFIG_PATH=$DBUSDIR/lib/pkgconfig:$PKG_CONFIG_PATH
| |
| export PATH=$QTDIR/bin:$KDEDIR/bin:$PATH
| |
| export LD_LIBRARY_PATH=$QTDIR/lib:$KDEDIR/lib:$LD_LIBRARY_PATH
| |
| ## Uncomment if dbus doesn't work
| |
| #alias dbusstart="eval `PATH=$DBUSDIR/bin \
| |
| #$DBUSDIR/bin/dbus-launch --auto-syntax`"
| |
| function cmakekde { cmake -DCMAKE_INSTALL_PREFIX=$KDEDIR \
| |
| -DCMAKE_BUILD_TYPE=debugfull $@ && make VERBOSE=1 && make install; }
| |
| | |
| | |
| Activate these settings with: (or logout and login again)
| |
| source ~/.bashrc
| |
| | |
| == Check out the software ==
| |
| svn co svn://anonsvn.kde.org/home/kde/trunk/qt-copy
| |
| svn co svn://anonsvn.kde.org/home/kde/trunk/KDE/kdelibs
| |
| wget http://www.cmake.org/files/v2.4/cmake-2.4.5.tar.gz
| |
| wget http://dbus.freedesktop.org/releases/dbus/dbus-1.0.2.tar.gz
| |
| {{tip|If you have DBUS-0.93 or newer and/or CMake 2.4.3 already installed, you can skip the sections "Build D-Bus" and/or "Install CMake" entirely.}}
| |
| | |
| == Build D-Bus ==
| |
| tar xvfz dbus-1.0.2.tar.gz
| |
| cd dbus-0.1.0.2/
| |
| ./configure --disable-qt --disable-qt3 --prefix=$DBUSDIR \
| |
| --localstatedir=/var && make && make install
| |
| dbus-uuidgen --ensure
| |
| | |
| == Install CMake ==
| |
| | |
| CMake is the build system tool used in KDE4. It replaced the autotools and libtool based system used in previous versions of KDE due to cross platform and performance issues.
| |
| | |
| Your operating system may provide CMake as an optional package. Check to see if there is a package of cmake 2.4.3 or better available and if so install that. If not, then you can download CMake from the [http://cmake.org/HTML/Download.html CMake download page] and build from source following the instructions below.
| |
| | |
| The default prefix is {{path|/usr/local}}, make sure {{path|/usr/local/bin}} is in your <tt>$PATH</tt>.
| |
| | |
| cd
| |
| tar zxf cmake-2.4.5.tar.gz
| |
| mkdir cmake-build
| |
| cd cmake-build
| |
| ../cmake-2.4.5/bootstrap
| |
| make
| |
| sudo make install
| |
| | |
| == Build Qt ==
| |
| cd ~/qt-copy && ./apply_patches && \
| |
| ./configure -qt-gif -no-exceptions -debug -fast \
| |
| -prefix $QTDIR -qdbus && make && make install
| |
| | |
| == Build kdelibs ==
| |
| cd
| |
| mkdir kdelibs-build
| |
| cd kdelibs-build
| |
| cmakekde ../kdelibs
| |
| | |
| === Install Additional CMake Modules ===
| |
| | |
| There are additional CMake modules in kdelibs that are necessary for building KDE applications. To install them:
| |
| cd
| |
| cd kdelibs/cmake/modules
| |
| cmake .
| |
| make install
| |
| | |
| You may need to do the last step as root (e.g. using su or sudo), depending on your system setup.
| |
| | |
| === Troubleshooting ===
| |
| If you have problems compiling kdelibs, first make sure the following commands can be executed: aclocal, autoconf, autoheader, gcc, g++, pkg-config.
| |
| | |
| {{tip|If you get "Could NOT find GIF", install the devel package of <tt>libungif</tt> (the actual name may vary between operating systems).}}
| |
| | |
| If the problems persist, try the make-option <tt>--keep-going</tt>
| |
| | |
| == Build kdepimlibs ==
| |
| Before ''kdebase'' you need to install ''kdepimlibs''
| |
| | |
| cd
| |
| svn co svn://anonsvn.kde.org/home/kde/trunk/KDE/kdepimlibs
| |
| mkdir kdepimlibs-build
| |
| cd kdepimlibs-build
| |
| cmakekde ../kdepimlibs
| |
| | |
| == Build kdebase ==
| |
| You may need kdebase for some kioslaves.
| |
| cd
| |
| svn co svn://anonsvn.kde.org/home/kde/trunk/KDE/kdebase
| |
| mkdir kdebase-build
| |
| cd kdebase-build
| |
| cmakekde ../kdebase
| |
| | |
| === Troubleshooting ===
| |
| If you have troubles compiling kdebase:
| |
| * Make sure you have the <tt>libxss headers</tt> installed. (Usually you got undefined references on xscreensaver objects if you haven't those headers)
| |
| * <tt>which meinproc</tt> has to deliver {{path|/home/kde-devel/kde/bin/meinproc}}
| |
| * if cmakekde cannot find the path of kdepimlibs, edit the file /home/kde-devel/kdebase-build/CMakeCache.txt and manually set KDEPIMLIBS_INCLUDE_DIR:PATH=/home/kde-devel/kdepimlibs-build
| |
| * if you get an error saying "Please set the following variables: X11_XTest_LIB (ADVANCED)", install the devel package of <tt>Xtst</tt>. On some systems, this is packaged separately from <tt>xext</tt> and called <tt>x11proto-xext-dev</tt> or <tt>libxtst-dev</tt>. You may also need to remove the CMakeCache.txt file in the build dir after installing the package.
| |
| | |
| == Success! ==
| |
| | |
| You are now ready to start building other svn modules in the same fashion as you built kdebase, running and testing KDE4 or writing your own patches and applications.
| |
| | |
| See the [[Getting Started/Set up KDE 4 for development|Starting a KDE4 Environment and Applications]] tutorial for how to start working on your new KDE4 installation.
| |
| | |
| == Additional notes ==
| |
| | |
| * [http://wiki.kde.org/tiki-index.php?page=KDECMakeIntro Introduction to CMake]
| |
| | |
| [[Category:Build KDE]]
| |
| [[Category:KDE4]]
| |