  The KDE FAQ v0.2.8
  Started by Matt McLeod.  Now maintained by Thor Sigvaldason
  15 July 1997

  This document contains a list of frequently asked questions (with
  answers) about the K Desktop Environment (KDE). The latest version of
  this document can be found at http://www.kde.org/kdp/kde_faq.html. You
  can find ascii, dvi, and ps versions at the same location. This docu-
  ment is part of the KDE Documentation Project.
  ______________________________________________________________________

  Table of Contents:

  1.      Introductory Information

  1.1.    What is KDE?

  1.2.    What does KDE look like?

  1.3.    Who is to blame for KDE?

  1.4.    Who's at fault for all the mistakes in this FAQ?

  1.5.    Why yet another desktop project?

  1.6.    Is KDE free?

  1.7.    Is KDE intended to run only on Linux?

  1.8.    Does KDE include support for languages other than English?

  1.9.    How will users (eventually) benefit from KDE?

  1.10.   How will system administrators (eventually) benefit from KDE?

  1.11.   What's the current status of KDE?

  1.12.   How can I get more information on KDE?

  1.13.   How was this FAQ created?

  2.      Finding and Installing KDE

  2.1.    Should I install the current version, or wait for a stable
  public release?

  2.2.    Where can I get KDE?

  2.3.    What files make up KDE and what else do I need?

  2.4.    What files should I download and install first?

  2.5.    How do I install the tgz distribution?

  2.6.    Can I give the ``./configure'' command any options?

  2.7.    How do I install the RedHat distribution?

  2.8.    How do I install the Debian distribution?

  2.9.    How can I build up a KDE installation from scratch?

  2.10.   What parts of KDE are essential?

  2.11.   What parts are optional?

  2.12.   Is there a binary release of KDE?

  2.13.   How do I uninstall a tgz distribution?

  2.14.   How do I uninstall a Redhat distribution?

  2.15.   How do I uninstall a Debian distribution?

  2.16.   Has anyone got KDE installed on non-Linux boxes?

  3.      Problems, Errors, and other Inconveniences

  3.1.    The configure script complains about my version of Qt. What
  can I do?

  3.2.    I get ``no such file'' errors for .moc files when installing.
  What's the problem?

  3.3.    What can I do about ``parse error at /'' errors when making?

  3.4.    Packages keep complaining that they can't find a given KDE
  library, but they're right there in KDEDIR/lib/. Can I fix this?

  3.5.    Sometimes when making, I get ``Unexpected end of line seen''.
  Can this be corrected?

  3.6.    Everything installed fine, but I get ``ERROR: No path for
  templates specified in config files''. What's the solution?

  3.7.    I get a ``cpio: unrecognized option: --quiet'' when I try and
  install the rpm package. What's wrong?

  3.8.    Why do I get ``resources.c:5: include' expects "FILENAME" or
  <FILENAME>'' when compiling kvt?

  3.9.    What does ``rock.o(.text+0x8bf): undefined reference to
  `sin''' mean?

  3.10.   Whenever I choose Logout from kwm or kpanel, it doesn't work.
  What's wrong?

  3.11.   Program k* seems really powerful, but I can't figure out how
  to configure it. What should I do?

  3.12.   I have a problem with KDE that is not mentioned in this FAQ.
  Where can I turn?

  3.13.   I had a problem, but then I managed to fix it. Who should I
  tell?

  3.14.   I posted some ideas/questions to a mailing list, and got
  dumped on. What should I do?

  4.      Using KDE

  4.1.    When I ``iconify'' a window, it disappears. Where does it go?

  4.2.    How can I get kvt to do a login by default (ie. do ``kvt -ls''
  when I select UNIX from kpanel)?

  4.3.    I want to add a kpanel icon to lauch a non-KDE application.
  How can this be done?

  4.4.    How does kpanel know what structure to use for it's launching
  menu? Can I alter it?

  4.5.    kfm uses the unkown file icon for a lot of file types. Are
  there more icons available?

  4.6.    I have many other KDE ussage questions. Where can I found out
  more?

  5.      Developer Information

  5.1.    Can I become a KDE developer?

  5.2.    What makes a KDE application a KDE application?

  5.3.    Why are we using QT? Wouldn't V/GTK/foo.widgets be better?

  5.4.    What about Qt's non-completely-free license?

  5.5.    Why don't we write a free Qt?

  5.6.    But why does the commercial Qt license costs so MUCH?

  5.7.    Why is the KDE so much like xyz OS/GUI?

  5.8.    What other sources of information are available to developers?

  5.9.    Ever since I uploaded my KDE application, I'm getting 5
  million e-mails a day from newbies asking stupid questions. How should
  I deal with this?

  5.10.   What projects currently need work?

  5.11.   What if I don't know how to program in C++?

  5.12.   What if I don't know how to program at all?
  ______________________________________________________________________

  1.  Introductory Information

  1.1.  What is KDE?

  KDE is a project aimed at building a fast and coherent desktop
  environment for the X Window System.

  The project already includes a window manager (kwm), file manager,
  (kfm), application launcher and organizer (kpanel), terminal emulator
  (kvt), and a system-wide hypertext help system (kdehelp). Embedded
  support for networking is included. From the filemanager (for
  example), a user can transparently access an ftp site in exactly the
  same way that they open a local file.

  In addition to these basic elements, there is also a core library of
  routines (libkdecore) that developers can use to build KDE
  applications.  Current applications include an editor (kedit), a
  ghostscript previewer (kghostview), and a dvi file viewer (kdvi).

  A scripting language is also in the works, which would allow users to
  write small applets and glue existing applications together. This
  scripting language may also allow users to write macros within KDE
  applications.

  KDE is based on the excellent Qt library, which is available from
  Troll Tech. Qt is an X library that handles lower level user-interface
  routines, and is free for freeware X developers (see ``Free''). Since
  Qt provides a C++ API, the dominant development language for KDE is
  C++.

  1.2.  What does KDE look like?

  If you're reading the html version of this document, then a screenshot
  should appear below. For readers of the other versions of this
  document, a current screenshot is available at
  <http://www.kde.org/screenshots/kwm.gif>.

  1.3.  Who is to blame for KDE?

  The original instigator of the entire project was Matthias Ettrich,
  who posted the original announcement that got the ball rolling.

  Since that time, a lot of other people have become involved.  A list
  of developers (including some photos) can be found at
  <http://www.kde.org/gallery/index.html>.

  1.4.  Who's at fault for all the mistakes in this FAQ?

  The KDE FAQ was started by Matt McLeod (mjm@kde.org). It is currently
  being maintained by Thor Sigvaldason (thor@netcom.ca). Other
  conributors include Sirtaj Singh Kang (ssk@physics.unimelb.edu.au),
  Robert David Williams (rwilliam@enol.com), Stephan Kulow
  (coolo@itm.mu-luebeck.de), and Dirk Jablonski
  (jablonski@poweronline.net).

  1.5.  Why yet another desktop project?

  Since most of the KDE developers are Linux enthusiasts, our central
  motivation is that a free desktop environment is something that Linux
  needs.  Current Linux distributions generally include a large number
  of X programs, but each of these use different widget sets and behave
  very differently.

  For those with sufficient resources, commercial products such as
  Caldera's Integrated Desktop do provide such a product, but not in a
  free version. We would like new users to be able to get on with their
  every-day tasks quickly and easily, without having to spend much
  money.

  There is also the obvious benefit that if (when!) KDE reaches a
  critical mass, it's open and free nature will allow for rapid
  extensions, additions, and improvements.

  1.6.  Is KDE free?

  That depends on what you mean by free. The source code for KDE is (in
  and of itself) free in the GNU GPL sense. This means you can download
  it, compile it, modify it, give away copies, include it on CD-ROMs,
  etc. (provided you make source available!).

  However, KDE is built on-top of Qt which has a slightly more
  restrictive license. In essence, you can use the X version of Qt to
  develop free software, such as KDE and KDE applications. However, you
  cannot sell commercial software that is based on Qt without obtaining
  a commercial license from Troll Tech.
  So, if you are thinking about developing an application that will work
  under KDE, you will face no constraints as long as you do not intend
  to ever sell your software commercially.

  1.7.  Is KDE intended to run only on Linux?

  Since neither the X Window System nor Qt inherently require Linux, KDE
  should be portable to other UNIX platforms. In fact, since versions of
  Qt exists for non-UNIX platforms (eg. Win95, WinNT), it may even be
  possible to port some KDE applications to those operating systems.

  Some users have reported success in building KDE on SUN's, Indy's, and
  so on. However, the current focus of the KDE project is definitely
  Linux, and that is where development energy is being focused. As a
  first stable distribution emerges (see ``Current Status''), increased
  support for portability will be enhanced.

  1.8.  Does KDE include support for languages other than English?

  Not yet. Some people are working on support for multi-byte character
  codes in the core system. Once this is done, there are plans afoot to
  add multiple language support to KDE. It is unlikely that this will
  appear very soon, and will certainly not be included in the first
  public release.

  This FAQ is currently available only in English, but anyone interested
  in working on translations is invited to contact the maintainer
  (thor@netcom.ca).

  1.9.  How will users (eventually) benefit from KDE?

  KDE will make it easier for you to get things done in a GUI
  environment. Through such conventions as standardized menus,
  comprehensive help facilities, and a unified configuration system, KDE
  will provide a far more regular interface than is currently available
  (for free) under Linux.

  Plus, KDE is already growing beyond its original goal of just offering
  a nice GUI. The library IO routines (which should be used by all KDE
  applications) make network resources transparent; applications don't
  care if they're getting a file from the local disk, an FTP server, or
  some currently unknown Internet service. If it can be described by a
  URL, it can be accessed by any KDE application.

  1.10.  How will system administrators (eventually) benefit from KDE?

  One of KDE's goals is to make the entire system easy to manage.
  Support is already there for separate system and user level
  configuration.  The application launcher tree uses regular files, so
  you can use normal UNIX permissions to decide who can run what. If a
  user can't run it, they'll never see an icon offering it.

  In addition, if you are involved in offering user support, then
  consistency between applications is obviously very appealing.

  1.11.  What's the current status of KDE?

  The KDE team is hard at work on a first public release. There is
  already a release available for testing (see ``installation''). Be
  warned, however, that the current release is ALPHA (see ``Should I
  install now?'').

  1.12.  How can I get more information on KDE?

  The main web site for KDE is located at  <http://www.kde.org>. There
  are also several mailing lists devoted to various aspects of KDE
  development. To join any of these, send a message containing the
  subject ``subscribe'' to:

  o  kde-request@fiwi02.wiwi.uni-tuebingen.de - for general discussion

  o  kde-devel-request@fiwi02.wiwi.uni-tuebingen.de - for developers

  o  kde-look-request@fiwi02.wiwi.uni-tuebingen.de - discussing
     look'n'feel issues

  o  kde-announce-request@fiwi02.wiwi.uni-tuebingen.de - announcements
     of new KDE applications

  o  kde-licensing-request@fiwi02.wiwi.uni-tuebingen.de - discussion of
     licensing issues

  To cancel an existing subscription to any of these lists, send a
  message containing the text ``unsubscribe [your-email-address]'' to
  the relevant list.

  1.13.  How was this FAQ created?

  All versions of this FAQ (html, PostScript, etc.) were created from
  the same piece of SGML source code. This source was then processed
  using a highly hacked version of SGML-tools that allows for the
  insertion of graphics. These hacks have not yet been made available as
  they are extremely crude. One day (in the not too distant future) this
  hacked version of SGML-tools will be polished and released as K-SGML.

  2.  Finding and Installing KDE

  2.1.  Should I install the current version, or wait for a stable pub-
  lic release?

  KDE is open and free software, so you are always at liberty to
  install, build, and generally fiddle with any version that you like.
  However, the current release is ALPHA software, and is fairly
  unstable. If you enjoy (and are capable of) tinkering with Makefiles,
  pouring over source code in search of errors, applying daily patches,
  etc., then install away.

  If, on the other hand, you're a little less experienced with
  programming and are really just looking for a great GUI, you may be
  better off waiting until the first BETA release is ready. With the
  current state of flux in the libraries and applications, KDE may be
  more trouble to you than it's worth (in its current form). When the
  BETA is ready, an announcement will be posted on
  comp.os.linux.announce.

  2.2.  Where can I get KDE?

  KDE is available from the following ftp sites. The main site is listed
  first, while those that follow are mirrors.

  o  <ftp://fiwi02.wiwi.uni-tuebingen.de/pub/kde/>

  o  <ftp://ftp.net.lut.ac.uk/kde>

  o  <ftp://ftp.nvg.unit.no/pub/linux/kde>

  o  <ftp://sunsite.unc.edu/pub/Linux/X11/kde>

  o  <ftp://ftp.isis.nsu.ru/mirrors/kde>

  o  <ftp://linux.unipv.it/pub/linux/kde>

  o  <ftp://sunsite.icm.edu.pl/pub/unix/kde>

  o  <ftp://ftp.chialpha.org/pub/kde>

  o  <ftp://ftp.blaze.net.au/pub/kde>

  2.3.  What files make up KDE and what else do I need?

  KDE is made up of various libraries and applications that sit on top
  of other software. The best way to see how all this fits together is
  to look at a diagram:

  This may look a little intimidating, but it's actually quite
  straightforward. If you are reading this document (a safe
  assumption!), you probably already have a working UN*X box. To install
  KDE, you just need to work backwards up the diagram. All the steps are
  detailed in what follows.

  2.4.  What files should I download and install first?

  The first major component of any KDE installation is the Qt library.
  This software must be installed and working on your machine before any
  of KDE can be compiled.  It is available for download from Troll Tech.
  KDE now requires Qt v1.2, so if you have v1.1 (or older) you will have
  to upgrade.

  To install KDE itself, you have two broad options: install one of the
  prepackaged distributions (highly recommended!), or install all the
  bits and pieces yourself (see the following two sections).

  2.5.  How do I install the tgz distribution?

  Grab the library, support, base, and applications bundles from the ftp
  site(s). You need to choose a location to unpack the archives (many
  people use /usr/src/kde).  If, for example, you have downloaded the
  .tgz files into a directory called /home/herbie/, you will issue a set
  of commands (as root) such as:

               cd /usr/src/
               mkdir kde
               cd kde
               tar -xvzf /home/herbie/kdeapps-970704.tar.gz
               tar -xvzf /home/herbie/kdebase-970704.tar.gz
               tar -xvzf /home/herbie/kdelibs-970704.tar.gz
               tar -xvzf /home/herbie/kdesupport-0.9.00.tgz

  Next, you must choose a location for files that are created during the
  building process to be installed to. This is referred to as your KDE
  directory, and most people use /usr/local/kde. Do this with a series
  of commands (as root) such as:

               cd /usr/local/
               mkdir kde
               export KDEDIR=/usr/local/kde
               export PATH=$PATH:KDEDIR/bin

  To ensure that these variables are available to all users on your
  system, you may want to add the last two export commands to your
  /etc/profile file. If you only want KDE to work for a particular user
  (eg. yourself), then you can just add these export commands to the
   .bash_profile file in that user's home directory. Note that if you
  are using a different shell than bash (such as csh), the syntax for
  exporting environment variables is slightly different (anyone know
  what it is?).

  Now that you have the source files unpacked and the KDE destination
  directory setup, you can begin building the software. Change
  directories into the kdesupport directory and type  ./configure. This
  will customize the Makefiles for your particular machine. (Note that
  ./configure can be passed command line options. See ``configure
  options''.) You should also have a look at the Next, type make and sit
  back while the jpeg and gif libraries included in the kdesupport
  package are created. If all goes well, you can then type
   make install  to have these libraries installed in the KDE directory
  hierarchy.

  The kdelibs package is built and installed in a similar fashion;
  change directories to kdelibs/, run  ./configure, type make, wait for
  the libraries to build, and then type make install. This process will
  create all the libraries that KDE applications require, including
  libkdecore (common look 'n feel, UI widgets, etc.) and libkhtml (set
  of HTML routines). They will be installed in KDEDIR/lib.

  Next, you need to  ./configure, make, and make install the base
  package from the kdebase directory. This process can take a little
  time, as the directory includes kwm (the KDE window manager), kfm (the
  KDE file manager), kpanel (application organizer and launcher),
  kdehelp (hypertext help system), and a number of other applications.

  Finally, you need to install the actual applications. You do this in
  exactly the same way, by changing into the kdeapps directory, and
  going through the same  ./configure, make, and make install process.

  Once everything is finished building and installing, fire up X and try
  out a few programs (eg. run kfm). To setup KDE as your default X
  environment, you'll have to change your .xinitrc file (located in your
  HOME directory). A typical one might look like this:

               #!/bin/sh
               exec kfm &
               exec kdisplay -init &
               exec kpanel &
               exec kwm

  If you have any problems, see if you can find an answer in the rest of
  this FAQ (see ``Problems''). If that doesn't help, then you can always
  find more information on the mailing lists ( see ``More Info''). If
  you find a bug in a particular package, then please send e-mail to the
  relevant maintainer.

  2.6.  Can I give the ``./configure'' command any options?

  Like virtually all implementations of configure (ie. scripts generated
  using the autoconf package), the KDE configure scripts can be passed a
  number of command line parameters. These can be useful for specifying
  the location of your Qt files, your (desired) KDEDIR, etc. To get a
  summary of what options are available to each of the configure scripts
  (the one for support, the one for libs, the one for base, etc.), just
  use the following coammand:

               ./configure --help

  2.7.  How do I install the RedHat distribution?

  If you're running A RedHat system, then you'll probably find the rpm
  distribution of KDE a little more straightforard to install. Go to the
  rpm section of the distributions area at the ftp site and get the
  latest version. It should look something like this:

               kde-0.10.2-1.i386.rpm

  Grab the README file included with the RedHat distribution and refer
  to it for more details. The general idea is to change to the directory
  where you downloaded the package, become root, and type:

               rpm -Uvh kde-0.10.2-1.i386.rpm

  2.8.  How do I install the Debian distribution?

  Like any other Debian package, the KDE related .deb's can be installed
  from the command line with:

               dpkg -i package_name.deb

  An equivalent form of this command is:

               dpkg --install package_name.deb

  2.9.  How can I build up a KDE installation from scratch?

  If you'd rather build a KDE installation by hand (ie. if you enjoy
  making your life more difficult than it needs to be), then you need to
  begin by grabbing the individual library files. You'll need the gif,
  jpeg, deui, core, and html widgets libraries.

  You can unpack these archives anywhere you like; ``cd'' to wherever
  you installed them, become root, and try ``make''. If you receive no
  error messages, make sure that you have declared KDEDIR and try ``make
  install''. If you do get errors while building, it may be that the
  programs cannot find all the bits and pieces of Qt that they need.
  Ensure that all of your Qt environment variables have been declared as
  per the Qt documentation. If you are still having problems, it's time
  to join a mailing list (see ``More Information'').

  Once you have the libraries in place, you have to inform your system
  that these new libraries exist. One way of doing this is to make
  symbolic links from files in a conventional library directory (such as
  /usr/lib/) to your KDE library directory (eg. /usr/local/kde/lib/).
  You can do this with a command like ``ln -s
  /usr/local/kde/lib/libkdecore.so /usr/lib/libkdecore.so'' (NB: You
  must do this for each of the libraries that now exist in your KDE lib/
  directory). You can then let your machine configure itself to use
  these new libraries by typing ``ldconfig''.

  An alternative method, and one that is probably much easier in the
  long run, is to add your KDE lib/ directory to the set of directories
  that ldconfig checks whenever it is invoked. Just edit the file
  /etc/ld.so.conf and add your kde lib/ directory to the list. Then just
  make sure to run ldconfig each time you install new KDE libraries.

  The next step is to download, compile, and install the five KDE core
  components:

  o  kwm - The KDE Window Manager

  o  kfm - The KDE File Manager

  o  kvt - The KDE Terminal Emulator (xterm replacement)

  o  kdehelp - The KDE Help System

  o  kpanel - The KDE Panel (organizer/launcher)

  In each case, make sure to check the included READ.ME's in each
  archive to get the latest information about the package. Each of these
  five components should configure themselves with the `` ./configure''
  command, build with the ``make'' command, and install themselves in
  the right place with ``make install''.

  Any problems that you cannot solve yourself should be directed either
  to the author of the package or to one of the relevant mailing lists.

  Having got the basic system up and running, you are now free to
  install whatever KDE applications you like. These are all designed to
  build and install in an analogous way.

  2.10.  What parts of KDE are essential?

  In addition to the libraries (libkdecore, libkhtml), the absolutely
  essential pieces of KDE are:

  o  kwm - The KDE Window Manager

  o  kfm - The KDE File Manager

  o  kvt - The KDE Terminal Emulator (xterm replacement)

  o  kdehelp - The KDE Help System

  o  kpanel - The KDE Panel (organizer/launcher)

  o  kdisplay - The KDE Display manager (organizer/launcher)

  o  kfontmanager - The KDE Font manager (organizer/launcher)

  These seven packages all assume the other six are available on your
  system. You can find useful summary information about the current
  state of these packages at  <http://www.kde.org/components.html>.

  2.11.  What parts are optional?

  All the rest of the KDE applications are optional, although since it
  is the applications that actually let you do something useful, you
  will certainly want to install some of them. Current KDE applications
  include a calculator, text editor, ghostscript previewer, and a dvi
  viewer. You can find useful summary information about the current
  state of these packages at <http://www.kde.org/components.html>.

  2.12.  Is there a binary release of KDE?

  The status of KDE binaries is a little unstable as we are still at the
  ALPHA stage. Stable binaries for general use will be made available as
  soon as we have progressed to the BETA stage.

  2.13.  How do I uninstall a tgz distribution?

  Although not quite complete, the command  make uninstall already
  reverses most of intallation process.

  2.14.  How do I uninstall a Redhat distribution?

  Just use the same command you would with any other RedHat package.
  That is, to uninstall the base distribution, try:

               rpm -e kde

  Likewise, a development distribution can be uninstalled with:

               rpm -e kde-devel

  2.15.  How do I uninstall a Debian distribution?

  To uninstall a Debian KDE package, use a command like this:

               dpkg -r package_name

  or (equivalently):

               dpkg --remove package_name

  2.16.  Has anyone got KDE installed on non-Linux boxes?

  Varying degrees of success have been reported with FreeBSD, NetBSD,
  Sun, Irix, etc. As the code matures towards a first public release,
  compatibility with other platforms will become increasingly important,
  but, for the time being, your best bet is to just try and install the
  latest distribution and hope for the best. As with any other problems,
  the mailing lists (see ``More Information'') are a very useful source
  of advice.

  3.  Problems, Errors, and other Inconveniences

  3.1.  The configure script complains about my version of Qt. What can
  I do?

  All recent versions of the KDE distribution require Qt v1.2. You must
  download and install this version for KDE to work.

  3.2.  I get ``no such file'' errors for .moc files when installing.
  What's the problem?

  There isn't one. While computing initial make dependencies,
   .moc files that do not exist (because they haven't been built yet)
  generate several missing file errors. There is no cause for alarm.

  3.3.  What can I do about ``parse error at /'' errors when making?

  Most KDE components are a mix of C and C++ code, and some developers
  tend to use the C++ comment syntax (ie. // everything on a line after
  two forward slashes in C++ is considered a comment) rather than the
  pure C syntax (ie. /* This is a correct C comment */). Some versions
  of gcc will balk at this (eg. 2.7.0), while others will not (eg.
  2.7.2). If you do get this error, just edit the relevant file and
  change any comments from C++ form to C form. For example, if you get
  the error from a line of code like this:

               a_variable = square_a_circle(diameter, pi); // Is this possible?

  Just change it to look like this:

          a_variable = square_a_circle(diameter, pi); /* Is this possible? */

  and then try compiling again.

  3.4.  Packages keep complaining that they can't find a given KDE
  library, but they're right there in KDEDIR/lib/. Can I fix this?

  The problem is that your dynamic library loader (ld) has to be aware
  of the location of all the (.so) libraries on your system in order to
  make them available to programs that want to run. Since
  /usr/local/kde/lib/ is not a conventional library location (unlike,
  for example, /usr/lib/), ld probably has no idea that libraries can be
  found there. The easiest way to fix this is to edit your ld.so.conf
  file which should be located in /etc/. A ``normal'' ld.so.conf should
  look something like this:

               /usr/local/lib
               /usr/X11R6/lib
               /usr/i486-linuxaout/lib

  Just edit this file in any text editor and add a line which points to
  your KDE lib directory. For most people this will be
  /usr/local/kde/lib and the resulting file should look something like:

               /usr/local/lib
               /usr/X11R6/lib
               /usr/i486-linuxaout/lib
               /usr/local/kde/lib

  Now, every time you recompile a KDE library, issue the following
  command as root;

               ldconfig

  3.5.  Sometimes when making, I get ``Unexpected end of line seen''.
  Can this be corrected?

  Rumour has it that this is caused by trying to compile KDE with a non-
  gnu make. The solution is to get make from the free software
  foundation ( <http://www.fsf.org>).

  3.6.  Everything installed fine, but I get ``ERROR: No path for tem-
  plates specified in config files''. What's the solution?

  This is a result of changes in where kde aplications should store
  their config files. The following should solve it:

               mv $HOME/.kde/config/.kfmrc $HOME/.kde/config/kfmrc

  3.7.  I get a ``cpio: unrecognized option: --quiet'' when I try and
  install the rpm package. What's wrong?

  The rpm package (see  <http://www.rpm.org>) requires cpio version
  2.4.2 or greater. Most non-Redhat systems have an older version of
  cpio, so you must upgrade in order to be able to use rpm. You can get
  the most recent version from the download section of the Free Software
  Foundations ftp site (see  <http://www.fsf.org>).

  3.8.  Why do I get ``resources.c:5: include' expects "FILENAME" or
  <FILENAME>'' when compiling kvt?

  This is another example of the C/C++ comment syntax problem. Just edit
  the resources.c file and change the C++ comment on line 5 to a C style
  comment (ie. change ``// CC: for isspace'' to ``/* CC: for isspace
  */''.

  3.9.  What does ``rock.o(.text+0x8bf): undefined reference to `sin'''
  mean?

  It means you're trying to compile a program that requires routines
  from the C math library without linking in that library. You can fix
  this by editing the relevant Makefile and adding ``-lm'' to the list
  of files to be linked (in the LDFLAGS declaration).

  3.10.  Whenever I choose Logout from kwm or kpanel, it doesn't work.
  What's wrong?

  This can occur if you are running KDE with the startx command and
  using your  .xinitrc file to launch the core KDE components. To fix
  this, make sure that kwn is the last application listed in your
  .xinitrc file, like this:

          #!/bin/sh
          exec kfm -d &
          exec kpanel &
          exec kdisplay -init &
          exec kwm

  3.11.  Program k* seems really powerful, but I can't figure out how to
  configure it. What should I do?

  Remember, KDE developers are all volunteers, and are currently
  devoting most of their time to getting the software running properly.
  As such, documentation for some applications is a little scant. But
  the framework for a very powerful help system is already in place (ie.
  kdehelp), so this is a temporary problem. Most of the KDE team would
  be ecstatic if you could persevere with an application long enough to
  figure out how it works, write up an (html) guide to the program, and
  then submit it to the relevant author.

  3.12.  I have a problem with KDE that is not mentioned in this FAQ.
  Where can I turn?

  If you're having problems, you are almost certainly not alone.
  Joining a mailing list (see ``More Information'') will put you in
  contact with other KDE users (and developers). You should also
  consider sending e-mail directly to the author of the program that is
  giving you trouble, particularly if you can document the exact nature
  of the problem. In all communications with KDE developers, please try
  and remember that they are volunteers and that KDE is still in an
  ALPHA stage of development.

  3.13.  I had a problem, but then I managed to fix it. Who should I
  tell?

  Write a very nice e-mail to the author of the program, explaining what
  the problem was, how to reproduce it, and your proposed fix. Be sure
  to include copious amounts of praise for the author's contribution to
  KDE.

  Next, send a summary of the problem and fix to the maintainer of this
  FAQ (thor@netcom.ca) so that in can be included in future versions of
  this document.

  3.14.  I posted some ideas/questions to a mailing list, and got dumped
  on. What should I do?

  Remember, KDE is a free and open project. As such, there is nothing
  binding any of its participants together except for a shared goal of
  creating great software. Anyone is free to join the mailing lists, and
  there is no authority to arbitrate what is (and what isn't)
  appropriate behaviour.  If you post something on the list that others
  find objectionable, then they are at liberty to shoot you down. And
  you, of course, are also free to rebut their responses.

  If, however, you want to avoid getting dumped on, here are a few
  suggestions:

  o  Remember that the software is at early stages, so developers are
     generally concerned with bug fixes and overall design issues.

  o  Posting feature wish lists (eg. Can you make k* calculate pi to a
     billion digits, call my pager when I receive e-mail, and play a
     mean game of chess?) is generally not a very constructive thing to
     do, unless you can demonstrate why there is some pressing reason
     for the inclusion of these abilities.

  o  Keep in mind that nobody is getting any paycheques for their work
     on KDE.

  o  If you are a newcomer to Linux, then you may want to steer clear of
     KDE until a first stable release is ready. A large part of the
     philosophy behind KDE is to make Linux easier to use, but we're not
     there yet.

  o  It's always a good idea to read a mailing list for a while before
     posting. This allows you to get a sense of the topic before barging
     headlong into an inappropriate posting.

  o  A little humour often goes a long way towards softening any
     temptations to enter flame mode.

  Enough said.

  4.  Using KDE

  4.1.  When I ``iconify'' a window, it disappears. Where does it go?

  With many X GUI's, the iconofy button (a little dot) will erase the
  window that the program is running in and create, instead, an icon on
  the desktop. KDE does not do this. Instead, when a window is
  ``iconified'' it is simply hidden (but the program is still running).
  There are two ways to get the window back: (1) If you're running the
  taskbar part of kpanel (see the Panel --> Configure menu entry), you
  can choose to have a list of tasks displayed on you desktop. Iconified
  tasks have their names surrounded by parenthesis. (2) If you click the
  middle mouse button on the root window, kwm will give you a list of
  all available tasks (and again, the names of iconified tasks are
  bracketed).

  4.2.  How can I get kvt to do a login by default (ie. do ``kvt -ls''
  when I select UNIX from kpanel)?

  Like all kde applications, information about how to run kvt (the UNIX
  option in kpanel) is stored in it's  .kdelnk file in the apps
  directory of your KDEDIR. To make it launch from icons or kpanel with
  a login by default, just edit KDEDIR/apps/Utilities/UNIX.kdelnk and
  make it look something like this:

          [KDE Desktop Entry]
          Type=Application
          Exec=kvt -ls
          Icon=UNIX.xpm
          DocPath=kvt.html
          Info=Terminal Emulation (kvt)
          Terminal=0

  4.3.  I want to add a kpanel icon to lauch a non-KDE application. How
  can this be done?

  Here's one way to do it, although there may be a more KDEish method
  (?).  We'll use the example of creating an entry for a news reader
  called knews (it starts with a k, but it is not a KDE application).
  Fire up kfm and create a directory called myapps inside your HOME/.kde
  directory.  Change into this directory and select File --> New -->
  Program.kdelnk. Enter knews.kdelnk for the name. A new item will
  appear in the KDE window called knews. Click on the icon with the
  third mouse button and select properties from the pop-up menu. Click
  on the Execute tab in the window that appears, and enter knews in the
  Execute input area. You can also choose a different icon here, select
  a working directory, and so on. To make this new program entry
  available from kpanel, just drag from the kfm window to the kpanel
  bar. Voila!

  4.4.  How does kpanel know what structure to use for it's launching
  menu? Can I alter it?

  The KDE directory hierarchy (located under KDEDIR) includes a
  directory called apps. The layout of this directory is what kpanel
  uses to create its menu structure. Thus, you must choose System -->
  kdisplay to run kdisplay because the kdisplay.kdelnk file exists in
  the System sudirectory of KDEDIR/apps. Any change to this directory
  structure will alter the layout of kpanel's menu.

  4.5.  kfm uses the unkown file icon for a lot of file types. Are there
  more icons available?

  There are some additional icons available in the dev directory of the
  ftp site(s). Install these in KDEDIR/lib/pics/ to make them available
  for use. If you think they're unattractive, then design really nice
  ones and upload them.

  4.6.  I have many other KDE ussage questions. Where can I found out
  more?

  All KDE applications ship with html documentation. It can be accessed
  by selecting help from within the relevant application, running
  kdehelp on its own, or by looking around in KDEDIR/doc/HTML/.

  5.  Developer Information

  5.1.  Can I become a KDE developer?

  Absolutely. Just join a mailing list or two (see ``More
  Information''), and start throwing out ideas. If you already have an
  idea or a program in the works that you'd like to bring to KDE, then
  have a look at the guidelines in the next section.

  5.2.  What makes a KDE application a KDE application?

  Broadly speaking, all KDE applications share the following features:

  o  Use of the Qt toolkit.

  o  Compliance with the KDE style guide and RFC.

  o  Use of the kconfig system for handling configuration files (when it
     becomes available).

  o  Use of the KDE library where appropriate.

  5.3.  Why are we using QT? Wouldn't V/GTK/foo.widgets be better?

  The KDE would not exist had Qt had not been around. It was not because
  someone brainwashed or forced us to use Qt; Matthias Ettrich proposed
  the KDE only because he noticed how easy it was to create smart-
  looking applications and utilities with Qt and recognized the need for
  such applications on UNIX.

  Nobody looked at Athena widgets and said "let's make a cohesive,
  complete desktop environment for unix/X rivalling commercial
  offerings, and make it free". Yes, the KDE developers like Qt and this
  is why the KDE exists.

  In theory, we could have introduced an abstraction layer between KDE
  and QT.  In practice, this is not an easy task. We prefer to spend our
  time writing applications rather than abstracting GUI toolkits when we
  already have an excellent one at our disposal.

  5.4.  What about Qt's non-completely-free license?

  We undertand and sympathize with the predicament in which our choice
  of Qt has put distributors of linux CDROMS. But we believe this is a
  small price to pay for what the KDE will become...  and, I daresay,
  already is.

  We are confident that the potential of distribution via the Internet
  will see to it that our effort in writing the KDE will not be in vain.
  Linux, the KDE and many, many more cooperative, voluntary projects
  exist in any form only because of the Internet.

  For people who shan't use KDE because Qt is not GPL: We sympathize,
  regret etc. We really, really do. But not quite enough to drop Qt, coz
  we really like it.

  5.5.  Why don't we write a free Qt?

  Write a couple of programs with Qt, look over the documenation
  closely. We may be programmers, artists and keen computer enthusiasts.

  But we are not masochists. While many good things have come from
  leaderless, voluntary projects, it will be very, very hard to come up
  with something that has the consistency and sensible engineering of
  Qt.

  But if you are willing to write it and make it GPL, we would like you
  to get in touch with us. Just keep in mind that there is a lot of
  momentum behind Qt already.

  5.6.  But why does the commercial Qt license costs so MUCH?

  This is out of the scope of the KDE FAQ and mailing lists. Perhaps it
  should be discussed on the qt-interest mailing list (see
  <http://www.troll.no/>)

  5.7.  Why is the KDE so much like xyz OS/GUI?

  We are humble enough to acknowledge that the established system(s) we
  are striving to replace have an edge in research in the field of ease-
  of-use.

  We don't look at it as imitation nor flattery. We see it as "beating
  'em on the head, violently and repeatedly, with their own 2x4". It
  makes us feel better about ourselves.

  5.8.  What other sources of information are available to developers?

  Sirtaj S. Kang (taj@kde.org) maintains the very useful KDE Developers'
  Centre which is located at
  <http://www.ph.unimelb.edu.au/~ssk/kde/devel/>. This site includes
  library references, a list of development tools, and a whole host of
  tips on how to create KDE apps.

  You should also look at kexample-0.3.1.tar.gz (available on ftp sites)
  for an example of how to set up the layout of your source code so that
  it will ./configure, compile, and install itself in the same manner as
  all other KDE applications.

  5.9.  Ever since I uploaded my KDE application, I'm getting 5 million
  e-mails a day from newbies asking stupid questions. How should I deal
  with this?

  KDE is generating a lot of excitement, and with popularity comes
  diversity of experience. There are now lots of new Linux users who
  have heard of KDE, seen the screenshots, and want it running on their
  system.  This is good news; KDE is supposed to be about creating a
  coherent and easy to use GUI.

  Unfortunately, since the word is ``out'' before a really stable
  version is available, new users have nowhere to turn for more
  information when the product does not work ``as advertized'' (this
  FAQ, for example, is currently pretty inadequate).

  If all your free time is already going to development, then nobody has
  any right to complain if you simply leave the newbie questions sitting
  in your inbox. If you're getting repeated questions on a single topic,
  send me (thor@netcom.ca) a quick summary of the problem (and any
  available fix) and I'll include it in the FAQ.

  5.10.  What projects currently need work?

  In short, just about everything. The core components (window manager,
  file manager, etc.) already have very active developers, but there are
  many applications that can and should be ported to KDE. It's a good
  idea to ask around on the mailing lists (see ``More Information'')
  before jumping headlong into something, since other developers may
  have already had the same idea as you're having. Anyone who writes a
  fast, efficient WYSIWYG word processor that can exchange files with
  WordPerfect and Word could quite possibly go down in history as the
  person who finally made Linux useful for the average computer user.

  5.11.  What if I don't know how to program in C++?

  If you're a little leery about joining KDE development because your
  forte is pure C, then now may be a good time to take the plunge.
  Although you will need to learn at least a little C++ to interact with
  Qt and libkde, regular C code is otherwise surprisingly easy to port
  to C++/Qt/KDE.

  The Qt package includes excellent documentation and example programs
  that can help you make the change to C++. In combination with a decent
  reference guide, you should be able to turn out a working khello_world
  application with a few days of effort.

  5.12.    What if I don't know how to program at all?

  The KDE project needs volunteers in many areas besides writing
  software. Kdehelp is evolving into a great hypertext help system, but
  there is currently a dearth of help files for users to actually read.
  Similarly, the KDE system is currently lacking a great deal of general
  documentation.  There is also room for input from all users on such
  issues as interface design, look and feel, overall structure,
  configuration methods, and a host of other issues.

