Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 12 Feb 1996 15:45:19 -0800
From:      John Polstra <jdp@polstra.com>
To:        dufault@hda.com
Cc:        freebsd-hackers@freebsd.org
Subject:   Re: g++ 2.7.2 / libg++ 2.7.1 and ld
Message-ID:  <199602122345.PAA14193@austin.polstra.com>

next in thread | raw e-mail | index | archive | help
Peter Dufault wrote:

> 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.

> The distributed gnu binutils linker fall down on FreeBSD.  If you
> configure it as any of our formerly close relatives (bsd, bsdi, or
> netbsd) it won't work:

Right.  Don't waste your time on the GNU binutils linker.  FreeBSD
support is MILES away.  For starters, there is absolutely _no_ support
for our shared libraries in it.

> I will be endebted to whomever can get this tool chain working
> properly by about Wednesday.

Don't use binutils.  Just make the compiler change to get rid of weak
symbols, and use the standard FreeBSD assembler and linker.

> I'm also interested in why we had to go off in left field with our
> linker.

We didn't go off in left field with our linker.  It's just old, that's
all.  We stayed in one place, while GNU went off somewhere else (left
field?).  I dearly wish that GNU binutils had up-to-date FreeBSD
support, but it doesn't.  It would take a _lot_ of work to put it in.
--
   John Polstra                                       jdp@polstra.com
   John D. Polstra & Co., Inc.                Seattle, Washington USA
   "Self-knowledge is always bad news."                 -- John Barth



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199602122345.PAA14193>