TDE core libraries
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.
 
 
 
 
 
 
Go to file
Timothy Pearson ed99a30644
Rename additional header files to avoid conflicts with KDE4
11 years ago
admin@39466b7b95 Reset submodule main/tdelibs/admin to latest HEAD 11 years ago
arts Rename additional header files to avoid conflicts with KDE4 11 years ago
cmake@274366fb8b Rename kiobuffer and KHTML 11 years ago
dcop Rename common header files for consistency with class renaming 11 years ago
dnssd Rename common header files for consistency with class renaming 11 years ago
doc Fix FTBFS 11 years ago
interfaces Rename additional header files to avoid conflicts with KDE4 11 years ago
kab Rename additional header files to avoid conflicts with KDE4 11 years ago
kate Rename additional header files to avoid conflicts with KDE4 11 years ago
kded Rename additional header files to avoid conflicts with KDE4 11 years ago
kdewidgets Rename additional header files to avoid conflicts with KDE4 11 years ago
kdoctools Rename additional header files to avoid conflicts with KDE4 11 years ago
kglib [kdelibs/kglib] added cmake support 13 years ago
kimgio Rename additional header files to avoid conflicts with KDE4 11 years ago
kinit Rename additional header files to avoid conflicts with KDE4 11 years ago
kjs Rename KHTML and kiobuffer 11 years ago
knewstuff Rename additional header files to avoid conflicts with KDE4 11 years ago
kstyles Rename additional header files to avoid conflicts with KDE4 11 years ago
libltdl@6d6796c294 Move libltdl to external repository 13 years ago
libtdemid Rename additional header files to avoid conflicts with KDE4 11 years ago
libtdescreensaver Rename additional header files to avoid conflicts with KDE4 11 years ago
licenses Revert automated changes 13 years ago
mimetypes Rename many classes and header files to avoid conflicts with KDE4 11 years ago
networkstatus Rename additional header files to avoid conflicts with KDE4 11 years ago
pics Add missing icons to Actions and Applications 11 years ago
tdeabc Rename additional header files to avoid conflicts with KDE4 11 years ago
tdecert Rename additional header files to avoid conflicts with KDE4 11 years ago
tdecmshell Rename additional header files to avoid conflicts with KDE4 11 years ago
tdeconf_update Rename additional header files to avoid conflicts with KDE4 11 years ago
tdecore Rename additional header files to avoid conflicts with KDE4 11 years ago
tdefile-plugins Rename additional header files to avoid conflicts with KDE4 11 years ago
tdefx Fix prior commit 11 years ago
tdehtml Rename additional header files to avoid conflicts with KDE4 11 years ago
tdeio Rename additional header files to avoid conflicts with KDE4 11 years ago
tdeioslave Rename additional header files to avoid conflicts with KDE4 11 years ago
tdelfeditor Rename additional header files to avoid conflicts with KDE4 11 years ago
tdemdi Rename additional header files to avoid conflicts with KDE4 11 years ago
tdeparts Rename additional header files to avoid conflicts with KDE4 11 years ago
tdeprint Rename additional header files to avoid conflicts with KDE4 11 years ago
tderandr Rename additional header files to avoid conflicts with KDE4 11 years ago
tderesources Rename additional header files to avoid conflicts with KDE4 11 years ago
tdersync Rename additional header files to avoid conflicts with KDE4 11 years ago
tdespell2 Rename additional header files to avoid conflicts with KDE4 11 years ago
tdesu Rename additional header files to avoid conflicts with KDE4 11 years ago
tdeui Rename additional header files to avoid conflicts with KDE4 11 years ago
tdeunittest Rename additional header files to avoid conflicts with KDE4 11 years ago
tdeutils Rename additional header files to avoid conflicts with KDE4 11 years ago
tdewallet Rename additional header files to avoid conflicts with KDE4 11 years ago
win Rename additional header files to avoid conflicts with KDE4 11 years ago
.gitmodules Move libltdl to external repository 13 years ago
AUTHORS Additional renaming of kde to tde 13 years ago
CMakeLists.txt Rename additional header files to avoid conflicts with KDE4 11 years ago
COMPILING Update COMPILING document 12 years ago
COMPILING.html Rename KDEHOME and KDEDIR 12 years ago
COPYING Revert automated changes 13 years ago
COPYING-DOCS Revert automated changes 13 years ago
COPYING.BSD Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features. 15 years ago
COPYING.LIB Revert automated changes 13 years ago
DEBUG Rename KInstance and KAboutData to avoid conflicts with KDE4 11 years ago
INSTALL Enhance kdelibs INSTALL file 13 years ago
KDE2PORTING.html Rename additional header files to avoid conflicts with KDE4 11 years ago
KDE3PORTING.html Rename common header files for consistency with class renaming 11 years ago
LAST_ENTERPRISE_SYNC Merge commit 1170303 from the Enterprise branch 14 years ago
Mainpage.dox Rename additional header files to avoid conflicts with KDE4 11 years ago
Makefile.am.in Rename additional header files to avoid conflicts with KDE4 11 years ago
Makefile.cvs Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features. 15 years ago
NAMING Fix a few remaining references to kio_ 11 years ago
README Rename a number of libraries and executables to avoid conflicts with KDE4 11 years ago
TODO Rename a number of classes to enhance compatibility with KDE4 11 years ago
catalog.xml * Large set of SuSE patches to fix bugs and add functionality 14 years ago
common_texts.cpp Convert remainder of kdelibs to use currently defined tqt object name defs 13 years ago
config.h.cmake Add very preliminary network-manager backend support 12 years ago
configure.in.bot Additional kde to tde renaming 13 years ago
configure.in.in Rename additional header files to avoid conflicts with KDE4 11 years ago
configure.in.mid Rename a number of libraries and executables to avoid conflicts with KDE4 11 years ago
kde.pot Additional renaming of kde to tde 13 years ago
qt-messages.pot Revert automated changes 13 years ago
tdelibs.lsm Update lsm files. 12 years ago
tdelibs.pc.cmake Add TDELibs .pc 12 years ago

README

In this file:

* About tdelibs
* Licensing
* Common Mistakes
* Upgrading
* Compile Problems
* More Info


About tdelibs
-------------
This is version R14.0.0 of the Trinity Desktop Environment [TDE] libraries.

This package includes libraries that are central to the development and 
execution of a KDE program, as well as internationalization files for these 
libraries, misc HTML documentation, theme modules, and regression tests. 
Here is an alphabetical list:

* arts
    ARTS (analog realtime synthesizer) is a environment of small modules
    that one can plug together to process multimedia data. This directory
    contains KDE wrapper and KDE user interface elements for ARTS.

* dcop
    The desktop communication program allows even shell scripts to
    communicate with KDE applications. It's also the base for KParts.

* interfaces
    tdeparts interface for text editors, mediaplayer and scripting.

* kab
    OBSOLETE, see kabc: Used to be the address book library, but now only
    used to convert kab-Addressbooks into kabc format.

* kabc
    The address book library.

* kate
    KPart for 'kate', the KDE advanced text editor.

* tdecert
    Personal certification manager.

* tdeconf_update
    Auto-Updater for config files.

* tdecore
    This is the core collection of KDE stuff. Non GUI classes reside here.

* kded
    The KDE daemon checks for newly installed software, update files
    or hostname changes and takes according actions.

* tdefx
    Library with pixmap effects.

* tdeprint
    The very versatile printing subsystem of KDE.

* tdesu
    Library for password entering and handling

* tdeui
    The main collection of misc. user interface classes (widgets).
    KSpell and related classes are a frontend to ispell for use within a
    GUI app.

* kdewidgets
    For developers: KDE's custom widgets for Qt Designer.

* kdoctools
    Contains mostly stuff convert XML docbook files via XSLT into
    human readable stuff.

* tdehtml
    The next generation HTML rendering widget designed for Konqueror.  This
    supports HTML 4, CSS, and a variety of other web related standards.

* kimgio
    An all purpose extension to the qimgio class that supports various
    image formats.

* kinit
    Process launcher, used for fast KDE startup

* kio
    Classes that fetch and decode URLs are contained here. This library also
    contains "tdesycoca", the system configure cache containing services,
    applications, servicetypes and mimetypes.

* tdeioslave
    I/O subprocesses to handle files, ftp, http, gzip and bzip2 streams.

* kjs
    Implementation of ECMAScript (aka JavaScript).

* tdeparts
    KDE component model.

* kstyles
    The theme engine lies within. It handles nearly anything relating to
    customizing the appearance of widgets.

* tdewallet
    Client and backend to store values in encrypted files.

* libtdemid
    MIDI file handling and midi mapper (manages output of midi files to
    various devices).

* libtdescreensaver
    Library for making KDE screensavers.

* libltdl
    System independed dlopen() handler.

* licenses
    Contains texts of all used licenses.

* mimetypes
    Database of mime types.

* pics
    Database of icons.


Licensing
---------
The libraries themselves have been covered (since Saturday, June 21st, 1997)
by the GNU Library General Public License (LGPL). Any other programs (such
as the examples) are covered by the GNU General Public License (GPL). All
the gory details for the LGPL reside in COPYING.LIB, and for the GPL reside
in COPYING.

Various parts are also covered under a BSD style license, detailed in
COPYING.BSD. Currently, code covered under such license is copyrighted by
Theo de Raadt.

When in doubt, check the individual file, they should all have license
headings and other identifying marks.


Common Mistakes
---------------
If configure claims Qt cannot be found, look at http://www.trolltech.com
to get a copy of Qt, version 3.3.0 or newer. If you have peeked there
already, grab the SVN module qt-copy from anonsvn.kde.org, or a snapshot
thereof.  Alternatively the svn module qt-copy from svn.kde.org can also be
used.


Debugging
---------
You can use --enable-debug with the configure script, if you want to have
debug code in your KDE libs. If you have the space and can stand code that's
somewhat slower, this is worth it. The extra information really
helps debugging and thus bugfixing.

On the other hand, --disable-debug removes all debug messages, leading
to a faster and cleaner desktop.

See also the file DEBUG.


Upgrading
---------
If you have an tdebase older than 3.0 installed, just copy all your .k*rc
files from $HOME to $HOME/.trinity/share/config. In the other case, default
values are used for most apps.


Compile Problems
----------------
Often, KDE compile failures are not KDE's faults but the one of the
compiler or the distribution used. For that reason, please have a look at
http://developer.kde.org/build/compilationfaq.html for known issues in certain OS
environments before reporting bugs or going mad :). 

gcc 3.0/3.0.1 is not yet able to compile all of KDE without errors, mostly 
due to bugs in this version of the compiler. Some older version of gcc 2.96
also have problems compiling KDE due to compiler bugs. Even though 
compilation may not report errors with these compiler, the usage of these
compilers may cause crashes when using the resulting executables.

If you are running a FreeBSD system, you will need to make sure that LIBS
is set to "-Wl,-export-dynamic". The easiest way to do this is to prefix
configure with it, i.e.: LIBS="-Wl,-export-dynamic" ./configure. Thanks to
Will Andrews <will@FreeBSD.org> and Arun Sharma <adsharma@sharmas.dhs.org>
for identifying what needed to be done, and how to do it, and such.

If you get odd error such as:

as: Error: /var/tmp/ccK1Cfxa.s, line 2827: Truncating token:
__t4pair2Zt18__rb_tree_iterator3Zt4pair2ZCt12basic_string3ZcZt18string_char_trai
ts1ZcZt24__default_alloc_template2b0i0Zt12basic_string3ZcZt18string_char_traits1
ZcZt24__default_alloc_template2b0i0ZRt4pair2ZCt12basic_string3ZcZt18string_char_
traits1ZcZt24__default_alloc_template2b0i0Zt12basic_string3ZcZt18string_char_tra
its1ZcZt24__default_alloc_template2b0i0ZPt4pair2ZCt12basic_string3ZcZt18string_c
har_traits1ZcZt24__default_alloc_template2b0i0Zt12basic_string3ZcZt18string_char
_traits1ZcZt24__default_alloc_template2b0i0ZbRCt18__rb_tree_iterator3Zt4pair2ZCt
12basic_string3ZcZt18string_char_traits1ZcZt24__default_alloc_template2b0i0Zt12b
asic_string3ZcZt18string_char_traits1ZcZt24__default_alloc_template2b0i0ZRt4pair
2ZCt12basic_string3ZcZt18string_char_traits1ZcZt24__default_alloc_template2b0i0Z
t12basic_string3ZcZt18string_char_traits1ZcZt24__default_alloc_template2b0i0ZPt4
pair2ZCt12basic_string3ZcZt18string_char_traits1ZcZt24__default_alloc_template2b
0i0Zt12basic_string3ZcZt18strin!
g_char_traits1ZcZt24__default_al

and you're using egcs, try re-compiling all your C++ libs with -fsquangle,
and then recompiling whatever you were working on with -fsquangle. It
should help, and more information about this is available on the egcs FAQ
available at http://egcs.cygnus.com


How to report
-------------
Reporting bugs is an art. Why?  Because bug reports can help and hinder.

They hinder if the developers are just buried in an avalanche of bug reports.
They spend hours figuring out which bug reports are valid and which aren't,
which bug reports are due to bugs or due to installation problems.

They can be of tremendous help to notify developers on problems in areas that
they normally don't have access (e.g. KDE on AIX) to.

So, here are some tips on bug reporting:

* make sure your bug is due to KDE ... and not due to a packaging problem of
  your Linux distributor. For example, most "I can not install the XYZ.rpm"
  problem are due to packaging issues. Refer with such questions to your
  Linux Distributor and his appropriate mailing list or bug reporting tool.

* The chance is high that your bug has already been dealt with ... so look
  if there is a newer version of tdelibs available. Reporting bugs for
  older, deprecated versions usually don't get that much attention :-)

* Also the chance is high that another one experienced your problem. The
  bug report wizard at http://bugs.kde.org will help you to find out if your
  problem has already been reported.

* The best bug report for a project based on voluntary work is of course one
  that comes with a patch that solves the problem. :-)


More info
---------
http://www.kde.org is a good starting point for info on KDE. If you are a
developer, you may also point your browser to http://developer.kde.org.
There is a plethora of mailing lists available, you can gain an overview
quickly by looking at http://lists.kde.org.