The loader looks at all the symbol tables on the
contained files. Have you tried
extracting the files in the archive and running nm on them?
It seems that in glibc the file efgcvt.c just wraps ecvt to a call to
sprintf so there's really isn't a ecvt.c (and thus no ecvt.o) but
efgcvt.o instead.
Mark
On 9/24/14, Ronald Natalie <ron(a)ronnatalie.com> wrote:
My guess is that when the libc was built ecvt.s was
built into some other
file other than ecvt.o and exists in the library under that name.
Ar only reports the file names inserted. The loader looks at all the
symbol tables on the contained files. Have you tried extracting the files
in the archive and running nm on them?