summaryrefslogtreecommitdiffstats
path: root/COMPILING
diff options
context:
space:
mode:
authortoma <toma@283d02a7-25f6-0310-bc7c-ecb5cbfe19da>2009-11-25 17:56:58 +0000
committertoma <toma@283d02a7-25f6-0310-bc7c-ecb5cbfe19da>2009-11-25 17:56:58 +0000
commitce4a32fe52ef09d8f5ff1dd22c001110902b60a2 (patch)
tree5ac38a06f3dde268dc7927dc155896926aaf7012 /COMPILING
downloadtdelibs-ce4a32fe52ef09d8f5ff1dd22c001110902b60a2.tar.gz
tdelibs-ce4a32fe52ef09d8f5ff1dd22c001110902b60a2.zip
Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features.
BUG:215923 git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/kdelibs@1054174 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
Diffstat (limited to 'COMPILING')
-rw-r--r--COMPILING137
1 files changed, 137 insertions, 0 deletions
diff --git a/COMPILING b/COMPILING
new file mode 100644
index 000000000..51681366b
--- /dev/null
+++ b/COMPILING
@@ -0,0 +1,137 @@
+THIS DOCUMENT DESCRIBES HOW YOU CAN COMPILE KDE WHEN USING SUBVERSION
+
+(If you use source tarballs, you can skip "make -f Makefile.cvs" and
+should use "make distclean" instead of "svn-clean")
+
+What you need
+=============
+
+Make sure you get the following stuff from the repository:
+
+qt-copy (This is qt-3.3.2)
+arts
+kdelibs
+kdebase (strongly recommended but not strictly necessary)
+<any other package you are interested in>
+
+It is important that you compile AND INSTALL the above packages in the
+above order.
+
+Further you will need GNU make, autoconf 2.52, automake 1.5 and
+a working C++ compiler (eg. gcc 2.95.2)
+
+Preparations
+============
+
+Before you start you must decide two things:
+
+1) Where do you want to have Qt installed? Qt is a bit lame in that it
+basically installs itself in its own source-tree, but symlinks are your
+friend. E.g you could link /usr/local/lib/qt3 to where you keep your Qt
+source. Qt libs then end up in /usr/local/lib/qt3/lib.
+
+2) Where do you want to have KDE installed. A good candidate is /usr/local/kde
+
+Make sure you do (if using sh, ksh, or bash):
+export KDEDIR=/usr/local/kde
+
+With csh or tcsh the following is more appropriate:
+
+setenv KDEDIR /usr/local/kde
+
+Now you want to make sure that Qt and KDE libraries are picked up correctly.
+
+On systems that respond to environment variables something similar to the
+following is appropriate:
+
+export LD_LIBRARY_PATH=$KDEDIR/lib:$QTDIR/lib
+
+On systems whose diety of choice is ldconfig, try:
+ldconfig -m $KDEDIR/lib
+ldconfig -m $QTDIR/lib
+
+You probably also want to add $KDEDIR/bin and $QTDIR/bin to your path.
+
+See http://www.kde.org/kde2-and-kde3.html for tips about setting up
+KDE 3.0 next to KDE 2.x.
+
+Compiling
+=========
+
+The magic sequence to compile & install a package is:
+gmake -f Makefile.cvs
+./configure --enable-debug
+gmake
+gmake install
+
+(On Linux, GNU make is the default make, and gmake in the above commands
+can be replaced with make).
+
+For Qt the magic sequence is:
+
+./configure -debug -shared -qt-gif -thread -sm -system-zlib -system-libpng -system-jpeg
+make
+
+Common problems
+===============
+
+Wrong Qt paths:
+One of the biggest problems is picking up the correct version of Qt,
+especially if your system has more version of Qt installed. Be aware
+that information about library paths gets saved in the "config.cache"
+file, "Makefile.in" as well as "Makefile" files. So it can be that after
+some struggle to get QTDIR/KDEDIR setup correctly your setup is actually
+correct, but old -incorrect- settings are still lying around.
+
+The best thing to do in such a case is to do a "svn-clean" (from kdesdk/scripts).
+This removes all files which aren't stored in the repository. You can then start all over
+again with "makefile -f Makefile.cvs". Make sure you don't have any important
+files lying around in your source tree any more, they will be deleted!
+
+New directories:
+When a new directory gets added to the repository it usually only contains a
+Makefile.am but not a Makefile. If you try to compile such a directory
+you will get an error like:
+
+ Making all in management
+ make[3]: Entering directory /home/gregturp/KDE/kdelibs/kdeprint/management'
+ make[3]: *** No rule to make target all'. Stop.
+ make[3]: Leaving directory /home/gregturp/KDE/kdelibs/kdeprint/management'
+ make[2]: *** [all-recursive] Error 1
+ make[2]: Leaving directory /home/gregturp/KDE/kdelibs/kdeprint'
+ make[1]: *** [all-recursive] Error 1
+ make[1]: Leaving directory /home/gregturp/KDE/kdelibs'
+ make: *** [all-recursive-am] Error 2
+
+The solution is to redo "make -f Makefile.cvs; ./configure".
+
+You can create a single Makefile from a Makefile.am file with the
+kdesdk/scripts/create_makefile script. Make sure to run it from the toplevel
+directory. (E.g. /home/gregturp/KDE/kdelibs)
+
+Problems?
+=========
+
+See http://www.kde.org/compilationfaq.html for common build problems
+and their solution.
+
+If you encounter _LINK_ problems you are probably doing something wrong.
+Do a "svn-clean" and start from scratch, usually this solves the problem.
+
+If you encounter missing include files, especially if the files start with
+a 'q', you probably have not setup your QTDIR correct or have the wrong
+version of Qt.
+
+If you encounter compile errors after updating from SVN, check whether you
+need to update kdelibs as well. If the problems persists, wait a few hours,
+usually compile errors are fixed shortly after they have been introduced.
+
+If you still have problems read the kde-devel@kde.org mailinglist and/or
+post your problem there. You can subscribe by sending mail to
+kde-devel-request@kde.org with "subscribe" in the subject.
+
+Have fun!
+
+Cheers,
+Waldo Bastian
+bastian@kde.org