Elektra: elektra-libs(7) -- libs overview

Elektra 0.8.14

- Main Page
- Related Pages
- Modules
- Namespaces
- Data Structures
- Files

elektra-libs(7) -- libs overview

Since 0.8.15 libelektra is split in following libraries:

Overview of Libraries

### Libelektra

    libelektra.so

Libelektra is now only a stub for legacy applications. It basically only links all previous libraries together. It should not be used for new applications or plugins, unless you actually want to link against everything.

### Libfull

    libelektra-full.so

Contains all sources of Elektra linked to together in one large library. Useful if you do not want dynamically loaded plugins. Should only used on embedded systems (where whole application stack is done by you) and for tests.

### Libstatic

    libelektra-static.so

Contains all sources of Elektra linked to together in one large library. Useful if you need your application to be linked statically against Elektra. Should only used on embedded systems (where whole application stack is done by you) and for tests.

### Libkdb

    libelektra-kdb.so
    <kdb.h> (kdb*)

Contains kdb* symbols and applications should link against it.

### Libplugin

    libelektra-plugin.so

Contains elektraPlugin* symbols and plugins should link against it.

### Libease

    libelektra-ease.so

Contains data-structure operations on top of libcore which do not depend on internals. Applications and plugins can choose to not link against it if they want to stay minimal.

### Libproposal

    libelektra-proposal.so

Contains functions that are proposed for libcore. Depends on internas of libcore and as such must always fit to the exact same version.

### Libmeta

    libelektra-meta.so

Contains meta data operations as described in METADATA.ini. Will be code-generated in the future, so methods should be mechanical reflections of the contents in METADATA.ini.

### Libcore

    libelektra-core.so
    <kdbhelper.h>
    <kdb.h> (key* and ks*)

Contains the fundamental data-structures every participant of Elektra needs to link against.

## Libtools

Is a high-level C++ shared-code for tools. It includes:

- plugin interface
- backend interface
- 3-way merge