Getting Started/Build/KDE4: Difference between revisions
Axeljaeger (talk | contribs) No edit summary |
(reformat code.) |
||
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. | This article shows how to download, build, install and start KDE 4 from subversion. It consolidates howtos from various sites, e.g. | ||
http://developer.kde.org/build/compile_cvs.html. | http://developer.kde.org/build/compile_cvs.html. | ||
This topic shows one way that works. It does not intend to explain the obvious background behind it. | This topic shows one way that works. It does not intend to explain the obvious background behind it. | ||
To reduce complexity, we use the bash-shell (standard) throughout the tutorial. | To reduce complexity, we use the bash-shell (standard) throughout the tutorial. | ||
==Become the user kde-devel== | == Become the user kde-devel == | ||
useradd kde-devel | useradd kde-devel | ||
mkdir /home/kde-devel | mkdir /home/kde-devel | ||
chown kde-devel:kde-devel /home/kde-devel 2>/dev/null || chown kde-devel:users /home/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: | |||
su - kde-devel | su - kde-devel | ||
== | == Set Environment Variables == | ||
You have to add some environment variables - add these lines to ~/.bashrc. | You have to add some environment variables - add these lines to <code>~/.bashrc</code>. | ||
export YACC='byacc -d' | export YACC='byacc -d' | ||
export QTDIR=$HOME/qt-unstable | export QTDIR=$HOME/qt-unstable | ||
Line 21: | Line 20: | ||
export KDEDIRS=$KDEDIR | export KDEDIRS=$KDEDIR | ||
export DBUSDIR=$KDEDIR | export DBUSDIR=$KDEDIR | ||
export PKG_CONFIG_PATH=$DBUSDIR/lib/pkgconfig: | export PKG_CONFIG_PATH=$DBUSDIR/lib/pkgconfig:$PKG_CONFIG_PATH | ||
export PATH=$QTDIR/bin:$KDEDIR/bin:$PATH | export PATH=$QTDIR/bin:$KDEDIR/bin:$PATH | ||
export LD_LIBRARY_PATH=$QTDIR/lib:$KDEDIR/lib:$LD_LIBRARY_PATH | export LD_LIBRARY_PATH=$QTDIR/lib:$KDEDIR/lib:$LD_LIBRARY_PATH | ||
Line 30: | Line 28: | ||
-DCMAKE_BUILD_TYPE=debugfull $@ && make VERBOSE=1 && make install; } | -DCMAKE_BUILD_TYPE=debugfull $@ && make VERBOSE=1 && make install; } | ||
==Check out the software== | == Check out the software == | ||
svn co svn://anonsvn.kde.org/home/kde/trunk/qt-copy | svn co svn://anonsvn.kde.org/home/kde/trunk/qt-copy | ||
svn co svn://anonsvn.kde.org/home/kde/trunk/KDE/kdelibs | svn co svn://anonsvn.kde.org/home/kde/trunk/KDE/kdelibs | ||
wget http://www.cmake.org/files/v2.4/cmake-2.4.3.tar.gz | wget http://www.cmake.org/files/v2.4/cmake-2.4.3.tar.gz | ||
wget http://dbus.freedesktop.org/releases/dbus-0. | wget http://dbus.freedesktop.org/releases/dbus-0.92.tar.gz | ||
==Build | == Build D-Bus == | ||
tar xvfz dbus-0.91.tar.gz | tar xvfz dbus-0.91.tar.gz | ||
cd dbus-0.91/ | cd dbus-0.91/ | ||
Line 42: | Line 40: | ||
--localstatedir=/var && make && make install | --localstatedir=/var && make && make install | ||
'''Make sure the dbus session is running'''. Otherwise some parts of the build will fail, e.g. <code>kxml_compiler</code> based file processing in kdepim: | |||
Otherwise some parts of the build will fail, e.g. kxml_compiler based file processing in kdepim | |||
dbusstart | dbusstart | ||
==Build Qt== | == Build Qt == | ||
cd ~/qt-copy && \ | cd ~/qt-copy && \ | ||
./configure -qt-gif -no-exceptions -debug -fast \ | ./configure -qt-gif -no-exceptions -debug -fast \ | ||
-prefix $QTDIR -qdbus && make && make install | -prefix $QTDIR -qdbus && make && make install | ||
==Build and | == Build and Install CMake == | ||
The default prefix is /usr/local, make sure /usr/local/bin is in your PATH. | The default prefix is <code>/usr/local</code>, make sure <code>/usr/local/bin</code> is in your <code>$PATH</code>. | ||
tar zxf cmake-2.4.3.tar.gz | tar zxf cmake-2.4.3.tar.gz | ||
Line 62: | Line 59: | ||
sudo make install | sudo make install | ||
==Build | == Build kdelibs == | ||
cd ~/ | cd ~/ | ||
mkdir kdelibs_build | mkdir kdelibs_build | ||
Line 68: | Line 65: | ||
cmakekde ../kdelibs | cmakekde ../kdelibs | ||
===Troubleshooting=== | === Troubleshooting === | ||
If you have problems compiling this, first make sure the following commands can be executed: aclocal, autoconf, autoheader, gcc, g++, pkg-config. | If you have problems compiling this, first make sure the following commands can be executed: aclocal, autoconf, autoheader, gcc, g++, pkg-config. | ||
; Note: If you get "Could NOT find GIF", install the devel package of <code>libungif</code> (the actual name may vary on distribution). | |||
If the problems persist, try the make-option | If the problems persist, try the make-option <code>--keep-going</code> | ||
==Build kdepimlibs== | == Build kdepimlibs == | ||
Before | Before ''kdebase'' you need to install ''kdepimlibs'' | ||
cd | cd | ||
Line 85: | Line 81: | ||
cmakekde ../kdepimlibs | cmakekde ../kdepimlibs | ||
===Troubleshooting=== | === Troubleshooting === | ||
To compile against kdelibs (not the snapshot) add | To compile against kdelibs (not the snapshot) add | ||
set(KDE4_IGNORE_DONTPORT TRUE) | set(KDE4_IGNORE_DONTPORT TRUE) | ||
to the CMakeLists.txt before | to the <code>CMakeLists.txt</code> before <code>find_package(KDE4 REQUIRED)</code> | ||
== Build kdebase == | |||
==Build | You may need kdebase for some kioslaves. | ||
You may need | |||
cd | cd | ||
svn co svn://anonsvn.kde.org/home/kde/trunk/KDE/kdebase | svn co svn://anonsvn.kde.org/home/kde/trunk/KDE/kdebase | ||
Line 98: | Line 93: | ||
cd kdebase-build | cd kdebase-build | ||
cmakekde ../kdebase | cmakekde ../kdebase | ||
===Troubleshooting=== | |||
=== Troubleshooting === | |||
If you have troubles compiling this: | If you have troubles compiling this: | ||
* Make sure you have the libxss headers installed. (Usually you got undefined references on xscreensaver objects if you haven't those headers) | * Make sure you have the <code>libxss headers</code> installed. (Usually you got undefined references on xscreensaver objects if you haven't those headers) | ||
* | * <code>which meinproc</code> has to deliver <code>/home/kde-devel/kde/bin/meinproc</code> | ||
has to deliver | |||
==Start KDE 4 | == Start KDE 4 Programs == | ||
To start the desktop environment itself, do: | To start the desktop environment itself, do: | ||
X :1 & export DISPLAY=:1 | X :1 & export DISPLAY=:1 |
Revision as of 10:23, 10 September 2006
This article shows how to download, build, install and start KDE 4 from subversion. It consolidates howtos from various sites, e.g. http://developer.kde.org/build/compile_cvs.html. This topic shows one way that works. It does not intend to explain the obvious background behind it.
To reduce complexity, we use the bash-shell (standard) throughout the tutorial.
Become the user kde-devel
useradd kde-devel mkdir /home/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:
su - kde-devel
Set Environment Variables
You have to add some environment variables - add these lines to ~/.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 alias dbusstart="eval `PATH=$DBUSDIR/bin \ $DBUSDIR/bin/dbus-launch --auto-syntax`" function cmakekde { cmake -DCMAKE_INSTALL_PREFIX=$HOME/kde \ -DCMAKE_BUILD_TYPE=debugfull $@ && make VERBOSE=1 && make install; }
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.3.tar.gz wget http://dbus.freedesktop.org/releases/dbus-0.92.tar.gz
Build D-Bus
tar xvfz dbus-0.91.tar.gz cd dbus-0.91/ ./configure --disable-qt --disable-qt3 --prefix=$DBUSDIR \ --localstatedir=/var && make && make install
Make sure the dbus session is running. Otherwise some parts of the build will fail, e.g. kxml_compiler
based file processing in kdepim:
dbusstart
Build Qt
cd ~/qt-copy && \ ./configure -qt-gif -no-exceptions -debug -fast \ -prefix $QTDIR -qdbus && make && make install
Build and Install CMake
The default prefix is /usr/local
, make sure /usr/local/bin
is in your $PATH
.
tar zxf cmake-2.4.3.tar.gz mkdir cmake-build cd cmake-build ../cmake-2.4.3/bootstrap make sudo make install
Build kdelibs
cd ~/ mkdir kdelibs_build cd kdelibs_build cmakekde ../kdelibs
Troubleshooting
If you have problems compiling this, first make sure the following commands can be executed: aclocal, autoconf, autoheader, gcc, g++, pkg-config.
- Note
- If you get "Could NOT find GIF", install the devel package of
libungif
(the actual name may vary on distribution).
If the problems persist, try the make-option --keep-going
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
Troubleshooting
To compile against kdelibs (not the snapshot) add
set(KDE4_IGNORE_DONTPORT TRUE)
to the CMakeLists.txt
before find_package(KDE4 REQUIRED)
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 this:
- Make sure you have the
libxss headers
installed. (Usually you got undefined references on xscreensaver objects if you haven't those headers) which meinproc
has to deliver/home/kde-devel/kde/bin/meinproc
Start KDE 4 Programs
To start the desktop environment itself, do:
X :1 & export DISPLAY=:1 startkde
Maybe you are logged in as your normal user (not kde-devel), want to stay in your current environment (KDE 3.5, gnome, whatever) and start a KDE 4 program. To start only kwrite from KDE 4, do:
ssh -X kde-devel@localhost kwrite