This paper aims to help new KDE developers to install KDE3 from cvs on their
machine without interfering with their KDE2 installation and thus allow them to
port their code.
Advanced Linux users who want to help debugging or just taste new features
can also benefit from this tutorial.
I explain (in great details) how to get, compile and install KDE3 from cvs
and to get it work smoothly along with your existing KDE2.
One way to do
it is to follow the link:
http://www.kde.org/kde2-and-kde3.html
Another way is to create a new user for KDE3 (I find it is better
with dcop). When you log in your normal user, you get your actual KDE2 and when
you log in your new user (called here kde3) you'll be on KDE3 cvs.
That's the way I explain here.
The trick here is not to install the new KDE from cvs on the actual KDE. If kde-cvs is NOT compiled as root, this cannot happen and you are safe!
What you need to know before starting: we will get all KDE3
sources from cvs and you need space on your disk. Qt-copy uses 120Mb and
kdesupport, kdelibs and kdebase (which are the minimum) ask for 500Mb space
disk. The other modules are not so big and use another 100Mb altogether.
As I propose to compile kde in the new kde3 user dir, see if you get enough
space to do that on your /home partition. Alternately you can choose /opt/kde3
for the compiling. We'll install KDE3 in /usr/local/kde3.
[[email protected] ann]$ vi .cvsrcand the file .cvsrc should have these 4 lines:
[[email protected] ann]$ cd /usr/local/If your user has not the adequate permissions for /usr/local, then change the permissions as root.
[[email protected] local]$ export CVSROOT=:pserver:[email protected]:/home/kde(enter as password)
[[email protected] ann]$ cvs login
[[email protected] local]$ cvs co qt-copyYou'll see a lot of lines writing in the terminal.
[[email protected] local]$ cd qt-copy(you'd better copy/paste that one to get it right)
[[email protected] qt-copy]$ export YACC='byacc -d'
[[email protected] qt-copy]$ export QTDIR=$PWD
[[email protected] qt-copy]$ make -f Makefile.cvs
[[email protected] qt-copy]$ ./configure -system-zlib -qt-gif -system-libpng -system-libjpeg -plugin-imgfmt-mng -thread -no-stl -no-xinerama -no-g++-exceptions
[[email protected] qt-copy]$ makeNo need to install qt. If all went well, you should have qt3 on your machine.
[[email protected] ann]# adduser -m kde3(don't forget the -)
[[email protected] ann]# passwd kde3(enter the same password twice)
[[email protected] ann]# mkdir /usr/local/kde3(don't forget the dot)
[[email protected] ann]# cd /usr/local/kde3
[[email protected] kde3]# chown kde3:kde3 .
[[email protected] kde3]# exit
[[email protected] ann]$ su - kde3(watch the -)
Edit the file .bash_profile in /home/kde3 and add the following lines:
export KDEDIR=/usr/local/kde3
export QTDIR=/usr/local/qt-copy
export MANPATH=$QTDIR/doc/man:$MANPATH
export PATH=$QTDIR/bin:$KDEDIR/bin:$PATH
export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH
export CVSROOT=:pserver:[email protected]:/home/kde
[[email protected] kde3]$ vi .cvsrcand add the 4 lines given previously (diff -u....).
[[email protected] kde3]$ exit(password)
[[email protected] ann]$ su
[[email protected] ann]$ su - kde3Password:
[[email protected] kde3]$ set |grep KDEDIRThe output should be
KDEDIR=/usr/local/kde3
[[email protected] kde3]$ set |grep QTDIR
QTDIR=/usr/local/qt-copy
[[email protected] kde3]$ mkdir cvs-kde(enter as password)
[[email protected] kde3]$ cd cvs-kde
[[email protected] cvs-kde]$ cvs login
[[email protected] cvs-kde]$ cvs co kdesupport
[[email protected] cvs-kde]$ cd kdesupport
[[email protected] kdesupport]$ make -f Makefile.cvs
[[email protected] kdesupport]$ ./configure
[[email protected] kdesupport]$ make
[[email protected] kdesupport]$ make install
make -iBe aware that you should try to resolve any compile error by checking your system and enquiring on IRC for example for known bugs because you can later miss an important lib that will not be compiled.
make -i install
[[email protected] kdesupport]$ ls -l $KDEDIR/libYou should have some output like that:
[[email protected] kdesupport]$ ls -l $KDEDIR/include
lrwxrwxrwx 1 kde3 kde3 16 Dec 7 18:35 libxslt.so ->libxslt.so.1.0.7*If this is the case, then you can use
su -c 'make install'for installing the files as some requiert that (like kppp for example).
cvs co -cgives you a list of all the modules available.
make cleanbefore re-starting with
rm config.cache
make -f Makefile.cvs .....
When you have finished with kdesupport, kdelibs and kdebase, you can try the new KDE by getting to your graphical login and use the kde3 user to start kde. You will see the new splashscreen at first. If not, then one of your variables must be incorrect.
Note for Suse users: in /home/kde3/.xinitrc, replace the
line
exec $WINDOWMANAGER
by
/usr/local/kde3/bin/startkde
[[email protected] ann]$ xhost+localhost
[[email protected] ann]$ su - kde3
Password:
[[email protected] kde3]$ export DISPLAY=:0.0
[[email protected] kde3]$ the name of the KDE3 program
Thanks to Olaf Zanger for testing and helping to improve the document.
Anne-Marie Mahfouf
(c)2001
From original french docs by François-Xavier Duranceau (KDE1+2) and
Hervé Lefebvre.
You can find a similar document in french at
http://www.kde-france.org/article.php3?id_article=17
Anne-Marie Mahfouf got to know Linux only three
years ago with a free CD in a magazine. After a while she joined the KDE
translation team to help translating docs into French. I
also started programming with Qt/KDE, painfully at first as she had no
programming knowledge at all. The KDE community has been very important
for its help and support.
Last July she initiated KDE-Edu which aims to develop educational software. The project was officially launched in September and is now very active (website: http://edu.kde.org). Being herself quite a "newbie", she likes writing docs that help beginners.
On a more personal note, she is the mother of four children aged 15 to 3 1/2 years old. She is French but lived in England since 1995. She enjoy playing music, and like reading, she trys to practice a sport regularly!
Anne-Marie Mahfouf could be reached by email: [email protected]