SD-DLOPEN(3)

NAME
sd-dlopen - ELF dlopen metadata annotation macros

SYNOPSIS

#include <systemd/sd-dlopen.h>

pkg-config --cflags libsystemd

DESCRIPTION

sd-dlopen.h provides macros for embedding .note.dlopen metadata in ELF binaries, implementing the ELF dlopen metadata[1] specification for declaring optional shared library dependencies that are loaded via dlopen(3) at runtime.

The header is self-contained and does not require runtime linkage against libsystemd(3). Projects only need the installed header to use the macros.

Package managers and build systems can read the embedded ELF notes to discover runtime dependencies that are not visible in ELF DT_NEEDED entries.

See SD_ELF_NOTE_DLOPEN(3) for details on the available macros and constants.

NOTES

The macros described here are header-only and do not require runtime linkage against libsystemd(3). Only the installed header and include path (as provided by pkg-config --cflags libsystemd) are needed.

HISTORY

SD_ELF_NOTE_DLOPEN() and associated macros and constants were added in version 261.

SEE ALSO

systemd(1), SD_ELF_NOTE_DLOPEN(3), dlopen(3)

NOTES

1.  ELF dlopen metadata
    https://uapi-group.org/specifications/specs/elf_dlopen_metadata/