# 9.4. Linker-Einstellungen

The Linker Options for your current project can be set by the last page of the project options dialog. You have to enable those libraries that your application uses to link them to your binary with the linker, e.g. your application uses the class KFileDialog. As the class KFileDialog is part of the KFile library, you have to enable kfile. For classes or functions that are not listed as checkboxes, use the "additonal libraries" field.

## 9.4.1. Linker Flags

remove all symbol table and relocation information from the executable:

  This means that all redundant information will be removed from the object files and the binary, resulting that debugging will not be possible. For as long as your application is in a development stage and not released as final, you should leave this option disabled.

prevent using shared libraries:

  This option disables the use of shared libraries on systems that support this. On systems using no shared libraries, this option will have no effect.

additional flags:

  Here, you can enter additional flags for the linker, setting the LDFLAGS environment variable by make. The available options can be taken from the man page for ld or your compiler manpage.

## 9.4.2. Libraries

The libraries section contains checkboxes for the most needed libraries in conjuction with Qt/KDE application development. You have to enable those libraries that your application uses, otherwise the linker will complain about unresolved symbol tables.

X11

  The X11 library. Recommended for all X-Window programs.

Xext

  The X11 extension library. Also most X-Window programs depend on Xext.

qt

  The Qt library. Recommended for Qt and KDE applications.

kdecore

  The KDE Core library; contains the classes for KDE Application frameworks.

kdeui

  The KDE User Interface library; contains KDE-specific widgets.

khtmlw

  The KHTML Widget library.

kfm

  The KFM library containing classes for KFM functions.

kfile

  The KFile library. Contains file dialogs etc.

kspell

  The KSpell library. Contains an interface for programs to use ISpell for spellchecking.

kab

  The KAdressBook library. Needed for access to the adressbook as well as providing adressbook widgets

additional libraries: Here you can enter additional libraries that your application needs, e.g. the KOM library. Set the libraries with the -l option; for the example -lkom.

## 9.4.3. Make

As GNU make supports some useful options, the Project Options dialog contains a page called "Make-Options", where those can be en/disabled. The available settings are:

Print debug information

  prints out all information about the project files and what make determines for rebuilding them.

Continue after errors

  tries to continue with the compilation after an error occured (e.g. a file couldn't be compiled due to an error)

Print the data base

  prints out the make-database for the current process which contains the changes from the last build-run.

Environment variables

  give the current environment variables a higher priority than the currently used variables in the Makefiles.

No built-in rules

  doesn't use built-in rules for make.

Touch files

  don't run the compiler on changed files; instead only touches them. This sets them as already processed by make.

Ignore all errors

  Ignores all errors that occur

Silent operation

  doesn't print out any information about the build-process

Print working directory

  prints the current directory during the make-process.

job number

  sets the amount of parallel processes for make. For a single-CPU system we recommend setting this to one or two.

set modified

  sets the selected file modified. Choose the file by clicking the folder button on the right. Setting a file modified means that the file will be processed by make and compiled if it is a source file.

additional options

  set additional options to make; those can be found in your local man page for "GNU Make".