Date: Mon, 12 Feb 1996 19:01:35 -0500 (EST) From: Peter Dufault <dufault@hda.com> To: jdp@polstra.com (John Polstra) Cc: freebsd-hackers@freebsd.org Subject: Re: g++ 2.7.2 / libg++ 2.7.1 and ld Message-ID: <199602130001.TAA17734@hda.com> In-Reply-To: <199602122345.PAA14193@austin.polstra.com> from "John Polstra" at Feb 12, 96 03:45:19 pm
next in thread | previous in thread | raw e-mail | index | archive | help
> > 1. Start with pgcc in -ports; > > ... > > As suggested in the list archives, I tried adding "#define > > SUPPORTS_WEAK 0" to config/xm-freebsd.h in the compiler, however, > > it still generates weak symbols. > > I was working on ports of gcc-2.7.2 and libg++-2.7.1 for a while. I got > interrupted and put it down, unfortunately. But maybe I can put you on > the right track. (Note: I haven't looked at the pgcc stuff.) > > The way to get rid of the weak symbols is to delete these lines from > "config/i386/freebsd.h": > > #define ASM_WEAKEN_LABEL(FILE,NAME) \ > do { fputs ("\t.weak\t", FILE); assemble_name (FILE, NAME); \ > fputc ('\n', FILE); } while (0) > > Just delete them; that's all you have to do. After that, everything > should work fine with our standard assembler and linker. Yes, John is right (Thanks to Thomas Graichen who also suggested this solution). Those of you who told me things work just fine after moving to a new assembler and using the existing linker: No they aren't - you just haven't had problems yet. The problems only come up occasionally with name collisions in C++ output that the new .weak code apparently expects the linker to resolve. -- Peter Dufault Real-Time Machine Control and Simulation HD Associates, Inc. Voice: 508 433 6936 dufault@hda.com Fax: 508 433 5267
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199602130001.TAA17734>