37.1 Dynamic Linker Invocation

When a dynamically linked program starts, the operating system automatically loads the dynamic linker along with the program. The GNU C Library also supports invoking the dynamic linker explicitly to launch a program. This command uses the implied dynamic linker (also sometimes called the program interpreter):

sh -c 'echo "Hello, world!"'

This command specifies the dynamic linker explicitly:

ld.so /bin/sh -c 'echo "Hello, world!"'

Note that ld.so does not search the PATH environment variable, so the full file name of the executable needs to be specified.

The ld.so program supports various options. Options start ‘--’ and need to come before the program that is being launched. Some of the supported options are listed below.

--list-diagnostics

Print system diagnostic information in a machine-readable format. See Dynamic Linker Diagnostics.