A shared object or executable file contains all the information necessary for a dynamic linker to load and run the file correctly.
Every shared object contains a SONAME that identifies the object.
You can specify this name by using the
--soname=name command-line option.
The linker identifies dependencies to other shared objects using the shared objects
specified on the command line. These shared object dependencies are encoded in
DT_NEEDED tags. The linker orders these tags to match the order
of the libraries on the command line.
If you specify the --init symbol command-line option, the linker
uses the specified symbol name to define initialization code and records its address
in the DT_INIT tag. The dynamic linker must execute this code when
it loads the executable file or shared object.
If you specify the --fini symbol command-line option, the linker
uses the specified symbol name to define termination code and records its address in
the DT_FINI tag. The dynamic linker executes this code when it
unloads the executable file or shared object.
Use the --dynamiclinker=name command-line option to
specify the dynamic linker to use to load and relocate the file at runtime.
Arm’s Privacy Policy has been updated. By continuing to use our site, you consent to Arm’s Privacy Policy. Please review our Privacy Policy to learn more about our collection, use and transfers of your data.