[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Bug#99307: libgcj/3419: unresolved symbols when gcj -static is used



On Wed, 9 Jan 2002, Matthias Klose wrote:

> FYI, this is a binutils bug, see http://bugs.debian.org/107812 for
> more information, introduced by calling strip on libgcj.a
> 
> The problem is that some class names in the java library occurs
> more than ones with different path names. For example
> java/util/Date.o and java/sql/Date.o. ar handles this by storing
> two different versions of Date.o in the archive.
> 
> When dh_strip executes 'strip --strip-debug libgcj.a', strip
> unpacks all object files in a temporary directory without any path
> prefix, and the first instance of Date.o seems to be overwritten
> by the second.

IIRC, ar currently cannot create archives that store path info, but can
handle them.  I believe libgcj.a is carefully constructed to work around
this.  Strip, however, is more "brute force" about things and does exactly
what Matthias describes, hence the problem.

Matthias, is there any way that someone can lobby to change the name of
that object file to something like sqlDate or something else unique?  It
seems odd that they would even want the same filename to be used with only
a path to differentiate the two, especially knowing the limitations of 
the GNU tools like ar and objcopy/strip.  I can probably provide a patch
that accomplishes a renaming of the file if nobody else has time...

C



Reply to: