You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
186 lines
7.7 KiB
186 lines
7.7 KiB
Introduction
|
|
============
|
|
"Konstruct" is a build system which helps you to install KDE releases and
|
|
applications on your system. It downloads defined source tarballs, checks
|
|
their integrity, decompresses, patches, configures, builds and installs them.
|
|
|
|
A complete KDE installation should be as easy as "cd meta/kde;make install"
|
|
which with this version gives a KDE 3.5.7 installation. Optionally you can
|
|
install additional applications like KOffice 1.6.3 or KDevelop 3.4.1, just
|
|
run for example "cd apps/office/koffice ; make install".
|
|
|
|
By default "Konstruct" installs to ~/trinity.5.7/ which means you don't have to
|
|
possess root privileges or risk to damage your system or affect another KDE.
|
|
|
|
The following table shows how many MBytes source tarballs will be downloaded:
|
|
|
|
Directory/Target | Size | Description
|
|
--------------------+-------+----------------------------------------------
|
|
kde/tdebase | 56MB | Desktop with browser, editor and terminal
|
|
meta/tdepim-crypto | 68MB | Above plus tdepim and crypto libraries
|
|
meta/kde | 172MB | All "KDE 3.5.7" packages & dependencies
|
|
meta/everything | 248MB | Most stable known targets, see next table
|
|
|
|
Following (unstable) targets are not included in the meta/everything target:
|
|
|
|
Directory/Target | Reason
|
|
------------------------+---------------------------------------------------
|
|
apps-unstable/ | Unstable development versions and/or undelivered
|
|
| dependencies, maybe conflict with apps/ entries
|
|
i18n/ | Nobody needs everything, just pick your language
|
|
kde/tdebindings | Only needed for developing with non-C++ language
|
|
|
|
If you have at least Qt 3.3 installed, define variable HAVE_QT_3_3_INSTALLED
|
|
(see "Configuration" chapter) and subtract 14 MB from the numbers in every
|
|
column.
|
|
|
|
If you want to have KDE localized into your native language, look into the
|
|
i18n/ directory, change to your language directory and start "make install".
|
|
To localize KOffice, install an i18n/koffice-l10n-<language-code> package.
|
|
|
|
"Konstruct" is maintained by binner@kde.org and based on GAR ports system by
|
|
Nick Moffitt (http://www.lnx-bbc.org/garchitecture.html) and is inspired by
|
|
GARNOME distribution started by Jeff Waugh (http://cipherfunk.org/garnome/).
|
|
|
|
|
|
Preconditions
|
|
=============
|
|
A working GNU tool chain (gcc, GNU make, flex, BSD yacc, gettext etc.) and
|
|
additional GNU tools like tar, gzip, bzip2, md5sum, patch and wget.
|
|
|
|
Some basic libraries and some other libraries enabling additional functionality
|
|
are not included in "Konstruct", http://www.kde.org/info/requirements/3.5.php
|
|
lists them. Note that you may have to install the header files within separate
|
|
"-dev" or "-devel" packages too.
|
|
|
|
If you use a recent SUSE or Mandrake 9.2 distribution you might be interested in
|
|
"Detektive", a simple script which checks and tells which required rpm packages
|
|
of your distribution you have not installed: Just run "cd misc/detektive;make".
|
|
|
|
I'm interested in any help to extend "Detektive" to other distributions/versions.
|
|
|
|
|
|
Configuration
|
|
=============
|
|
Copy gar.conf.mk.in to gar.conf.mk and change it to your liking. Common options:
|
|
|
|
GARCHIVEDIR If you have already downloaded source tarballs set the path here.
|
|
|
|
prefix Where to install your KDE desktop. Default is ~/trinity.5.7/ .
|
|
Moving KDE installation elsewhere afterwards calls for troubles!
|
|
|
|
HAVE_64BIT_TARGET Set this if you want to compile KDE for a 64bit target (x86_64)
|
|
|
|
OWN_CFLAGS Allows you to specify compiler flags specific to your CPU.
|
|
|
|
HAVE_QT_3_3_INSTALLED Set this if you have at least Qt 3.3 (including moc,
|
|
uic and headers) installed and want to skip Qt installation.
|
|
|
|
BUILD_CLEAN Set this if you're low on available file system space.
|
|
|
|
If the download fails because of a proxy, then please consult the wget man page
|
|
for necessary options in your ~/.wgetrc. If download.kde.org redirects you to a
|
|
broken or incomplete mirror you may fix your problem by changing kde.conf.mk.
|
|
|
|
|
|
Usage
|
|
=====
|
|
Be sure that you have a live internet connection. Choose a target and change
|
|
to the directory which helds its definition, e.g. "cd kde/tdebase". Now run
|
|
make with one of the following targets, usually you only need "make install".
|
|
|
|
The GAR system provides seven basic targets for each package:
|
|
|
|
fetch
|
|
This target downloads all files and patches needed to compile the package.
|
|
Typically this is a single tarball, accompanied by occasional patch files.
|
|
|
|
checksum
|
|
Uses md5sum to ensure that the downloaded files match those with which the
|
|
package maintainer worked.
|
|
|
|
extract
|
|
Makes sure that all of the necessary source files are available in a working
|
|
directory. In some cases (such as when downloading a single C++ source file)
|
|
this will simply copy files over.
|
|
|
|
patch
|
|
If the package has to be patched (either via third-party patches or package
|
|
maintainer patches), this target will perform that step.
|
|
|
|
configure
|
|
Configures the package as specified in the Makefile. It will typically run
|
|
the package's underlying configuration system (such as autoconf or Imake).
|
|
|
|
build
|
|
Performs the actual step of compilation after installing the dependencies.
|
|
|
|
install
|
|
Puts files in the proper locations and performs any necessary mop-up work.
|
|
|
|
These targets are named after their counterparts in the BSD Ports system and
|
|
behave in the same manner. If you want to install a package you have to enter
|
|
the package's or target's directory and to run "make install" or "make patch"
|
|
(just two examples). A later target includes all the previously listed ones.
|
|
|
|
Some additional useful targets which you usually don't require are:
|
|
|
|
buildclean
|
|
Clean up the working directory but don't delete downloaded packages. Run this
|
|
if you installed missing dependencies and want to re-configure the package.
|
|
|
|
clean
|
|
Clean up the working directory. This also deletes downloaded packages! Either
|
|
use "buildclean" instead or call "garchive" before to prevent new downloads.
|
|
|
|
garchive
|
|
Call "checksum" target and save downloaded files to GARCHIVEDIR directory.
|
|
|
|
showdeps
|
|
Print a tree with the recursive dependencies of current package.
|
|
|
|
For every target exists a deep-foo variant which will also call it recursively
|
|
for all its dependencies, e.g. with "make deep-checksum" you can download all
|
|
required source tarballs and build it later (when you have no net connection).
|
|
|
|
|
|
After installation
|
|
==================
|
|
After installation you have to set some variables allowing your system to find
|
|
KDE binaries and libraries and KDE to allow to find its own files, for Bash:
|
|
|
|
export QTDIR=~/trinity.5.7
|
|
export KDEDIR=~/trinity.5.7
|
|
export KDEDIRS=~/trinity.5.7
|
|
|
|
export LD_LIBRARY_PATH=~/trinity.5.7/lib
|
|
export PATH=~/trinity.5.7/bin:$PATH
|
|
|
|
Setting KDEHOME too, e.g. "export KDEHOME=~/.kdetest", will tell KDE to save
|
|
your settings to this directory and leave default ~/.kde directory unaffected.
|
|
|
|
On shadow password systems you have to set $(prefix)/bin/kcheckpass SUID root
|
|
or SGID shadow - otherwise you will not be able to unlock a locked desktop.
|
|
|
|
The complete KDE desktop is started with "startkde", most distributions start
|
|
it if you set it to the WINDOWMANAGER variable in your shell initializations.
|
|
|
|
|
|
How to get latest version
|
|
=========================
|
|
You must have the Subversion client installed, then run in a shell:
|
|
|
|
svn co svn://anonsvn.kde.org/home/kde/branches/KDE/3.5/konstruct/
|
|
|
|
If you have no own old gar.conf.mk, copy gar.conf.mk.in over to gar.conf.mk.
|
|
|
|
To update your "Konstruct" checkout or the released "Konstruct" tarballs, change
|
|
to the "konstruct" directory and run "svn up".
|
|
|
|
License
|
|
=======
|
|
Redistribution and/or use, with or without modification, is permitted. This
|
|
software is without warranty of any kind. The author(s) shall not be liable
|
|
in the event that use of the software causes damage.
|
|
|