This is the mail archive of the
cygwin@cygwin.com
mailing list for the Cygwin project.
Re: binutils 20021107-2
Robert Collins wrote:
On Sat, 2002-11-09 at 21:59, Danny Smith wrote:
Hello Robert
By default symbols in libstdc++.a are excluded when doing --export-all, to
protect against this type of error.
However, ld/pe-dll.c knows nothing about libstdc++-2.a. So those symbols do
get exported ... and cause the usual problems with multiple definitions.
Quick solution: Try --exclude-libs=libstdc++-2.a
Got it in one. Should this be in the g++-2 specs?
Nope. Chris should apply the attached patch to binutils and re-release.
It's surprising we didn't catch this when gcc-3.x/gcc2-2.95 were
getting their shakedown this summer. Oh well.
Also, Chris, you could take the opportunity of binutils-20021107-3 to
apply Egor's remaining patches... :-)
--Chuck
Index: pe-dll.c
===================================================================
RCS file: /cvs/src/src/ld/pe-dll.c,v
retrieving revision 1.45
diff -u -r1.45 pe-dll.c
--- pe-dll.c 6 Nov 2002 19:36:20 -0000 1.45
+++ pe-dll.c 9 Nov 2002 17:27:42 -0000
@@ -141,6 +141,7 @@
static struct sec *edata_s, *reloc_s;
static unsigned char *edata_d, *reloc_d;
static size_t edata_sz, reloc_sz;
+static int runtime_pseudo_relocs_created = 0;
typedef struct
{
@@ -234,6 +235,8 @@
{ "libg2c.", 7 },
{ "libsupc++.", 10 },
{ "libobjc.", 8 },
+ { "libstdc++-2.", 12 },
+ { "libg2c-2.", 9 },
{ NULL, 0 }
};
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Bug reporting: http://cygwin.com/bugs.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/