This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug libgcj/38396] [4.4 Regression] libgcj_bc for 4.3 and 4.4 are binary incompatible but have the same SONAME
- From: "jakub at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 10 Dec 2008 13:30:11 -0000
- Subject: [Bug libgcj/38396] [4.4 Regression] libgcj_bc for 4.3 and 4.4 are binary incompatible but have the same SONAME
- References: <bug-38396-10053@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #17 from jakub at gcc dot gnu dot org 2008-12-10 13:30 -------
For #c12, those weren't present in 4.3 libgcj_bc.so, but I don't see why it
matters. 4.3 linked ecj1 doesn't need any of those symbols. The reason why it
has DT_NEEDED libgcj.so.9 is IMHO that libgcj.la was in ecjx's LDADD, so
libtool
linked it with -lgcj (and as -Wl,--as-needed -lgcj -Wl,--no-as-needed wasn't
used, it was added to DT_NEEDED unconditionally).
The fix really is not to have libgcj.la in LDADD for dynamically linked ecj1.
I'm just not sure about !ENABLE_SHARED build if USE_LIBGCJ_BC is true, maybe
libgcj.la is needed in that case (not sure if libgcj_bc.la has libgcj.la as a
dependency in that case).
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38396