10.2. Controlling dynamic section contents

armlink provides a number of features to control and add information to the .dynamic section generated in a dynamic image. These are mostly implemented with linker command-line options shown in Table 10.6:

Table 10.6. Controlling dynamic section contents with armlink

OptionSupported fromVisibility
--runpath=pathlistRVCT 3.1Adds extra locations, DT_RPATH tags, to be search by the dynamic linker for dependencies
--dynamiclinker=nameRVCT 4.0Control the dynamic linker set in the executable via the PT_INTERP program header element
--fini=symbolRVCT 4.0Set the finalization symbol, DT_FINI, for an image
--init=symbolRVCT 4.0Set the initialization symbol, DT_INIT, for an image
--no_add_neededRVCT 4.0Causes the linker to add dependencies of shared libraries to dependency list, DT_NEEDED tags, of current image
--prelink_supportRVCT 4.0Causes changes in ELF to allow prelink use, includes generating extra DT_NULL tags to create space in the dynamic symbol table for prelink
--soname=nameRVCT 4.0Set the name, DT_SONAME, of SysV shared library
--linker_script=ld_scriptARM Compiler toolchain 4.1Implements a subset of the GNU ld script language to give finer control over the layout of sections in the SysV output of the linker

As well as these linker switches there is a single steering file command, REQUIRE, than can be used to make the linker add extra dependencies, DT_NEEDED tags, into the dynamic section.

Copyright © 2010 ARM. All rights reserved.ARM DAI 0242A