4.2.1.5 The dynamic-segment test

  Problem:  Programs with more than one dynamic section will not be loaded properly
  Fix By:   Fix assembler source code and/or linker script
  Waive If: Don't.

  Example:  FAIL: dynamic segment test because multiple dynamic sections detected

Dynamic executables must have a dynamic section which contains information that is used by the loader at program startup. The loader however only expects there to be one dynamic section in a program, and it does not cope it there are more than one. Normally this is not an issue however as the linker will ensure that there is only one dynamic section. It is possible however to use a custom linker script to create more than one dynamic section, or to write some assembler code specifically designed to create multiple dynamic sections.

If necessary the test can be disabled via the --skip-dynamic-segment option and re-enabled via the --test-dynamic-segment option.