This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
SYMTAB and DYNSYM tables relationship question
- From: Vladimir Simonov <sv at sw dot ru>
- To: binutils at sourceware dot org
- Date: Wed, 30 Jun 2010 14:21:51 +0400
- Subject: SYMTAB and DYNSYM tables relationship question
Hi all,
I have ELF executable (EXE) dynamically linked with DSO (SO) on
some dos-like OS with ELF support. Some symbol A (FUNC GLOBAL DEFAULT)
is referenced only from SO(not from EXE itself). After link
(by ld, binutils 2.20.1) EXE contains info about symbol A only
in DYNSYM table. There is nothing about A in SYMTAB and .rel.text.
As result our runtime linker is unable to find symbol A during SO
loading. If I reference A from EXE, A appears in SYMTAB, DYNSYM
and .rel.text and runtime works OK.
Questions:
1. Must symbol A be in SYMTAB and .rel.text if it is not
referenced from EXE directly? By other words, is the problem
in ld or in runtime linker?
2. If the problem is in runtime linker, then is it possible
to force such records creation without explicit reference on A
from EXE sources? Via ld's version-script, may be options...
Thanks in advance
Vladimir Simonov