Difference between revisions of "Getting Started/Build/KDE4"

m (add to category 'Build KDE')
m (use path template)
Line 15: Line 15:
  
 
== Set Environment Variables ==
 
== Set Environment Variables ==
You have to add some environment variables - add these lines to <tt>~/.bashrc</tt>.
+
You have to add some environment variables - add these lines to {{path|~/.bashrc}}.
 
  export YACC='byacc -d'
 
  export YACC='byacc -d'
 
  export QTDIR=$HOME/qt-unstable
 
  export QTDIR=$HOME/qt-unstable
Line 51: Line 51:
 
== Build and Install CMake ==
 
== Build and Install CMake ==
  
The default prefix is <code>/usr/local</code>, make sure <code>/usr/local/bin</code> is in your <code>$PATH</code>.
+
The default prefix is <code>/usr/local</code>, make sure {{path|/usr/local/bin}} is in your <code>$PATH</code>.
  
 
  tar zxf cmake-2.4.3.tar.gz
 
  tar zxf cmake-2.4.3.tar.gz
Line 85: Line 85:
 
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 <code>CMakeLists.txt</code> before <code>find_package(KDE4 REQUIRED)</code>
+
to the {{path|CMakeLists.txt}} before <code>find_package(KDE4 REQUIRED)</code>
  
 
== Build kdebase ==
 
== Build kdebase ==
Line 98: Line 98:
 
If you have troubles compiling this:
 
If you have troubles compiling this:
 
* Make sure you have the <code>libxss headers</code> 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>
+
* <code>which meinproc</code> has to deliver {{path|/home/kde-devel/kde/bin/meinproc}}
  
 
== Start KDE 4 Programs ==
 
== Start KDE 4 Programs ==

Revision as of 18:54, 22 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 [email protected] && 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.91.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 && su -c "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 [email protected]
kwrite

This page was last edited on 22 September 2006, at 18:54. Content is available under Creative Commons License SA 4.0 unless otherwise noted.