Unresolved soname dependencies

External dependencies
Removal of unecessary files
Addition of DT_RUNPATH entries
Addition of DT_SONAME settings
Adjustment to Portage soname resolution logic

    QA Notice: Unresolved soname dependencies
   

This warning comes up when a library or executable has one or more soname dependencies (found in its NEEDED.ELF.2 metadata) that could not be resolved by usual means. If you run ldd on files like these then it will report a "not found" error for each unresolved soname dependency. In order to correct problems with soname dependency resolution, use one or more of the approaches described in the following sections.

Content of the NEEDED.ELF.2 metadata file may be useful for debugging purposes. Find the NEEDED.ELF.2 file in the ${D}/../build-info/ directory after the ebuild src_install phase completes, or in the /var/db/pkg/*/*/ directory for an installed package. Each line of the NEEDED.ELF.2 file contains semicolon separated values for a single ELF file. The soname dependencies are found in the DT_NEEDED column:

   E_MACHINE;path;DT_SONAME;DT_RUNPATH;DT_NEEDED;multilib category
  

External dependencies

For packages that install pre-built binaries, it may be possible to resolve soname dependencies simply by adding dependencies for one or more other packages that are known to provide the needed sonames.