Subject: Re: GCC problem
To: Ingolf Koch <ingolf@mathematik.uni-jena.de>
From: Frank van der Linden <frank@wins.uva.nl>
List: current-users
Date: 12/14/1997 20:33:01
On Thu, Dec 11, 1997 at 12:38:50PM +0100, Ingolf Koch wrote:
> > #include <iostream.h>
> > main()
> > {
> >     cout << hex << 1234 << endl;
> > }
> > 
> > The output:
> > 
> > {pent2:~}133: g++ -o test1 test1.C         
> > /var/tmp/cc29957a1.o: Undefined symbol `_hex__FR3ios' referenced from text 
> > segment
> 
> This is what my bin/4490 PR is about. Although I have
> suggested a workaround (see audit trail), no one seems
> to have taken a look at it. :-/

I had a look, and at first I could reproduce it. _hex__FR3ios (mangled
version of hex() taking an iostream) should be in libstdc++. After
some cleaning up and rebuilding libstdcc+, the error disappeared.

Unfortunately, I don't remember quite what I did.. However, the problem
seems to be that there was an old .o file lying around somewhere. THis
can be a problem, for example, if you have been compiling without obj
dirs, do a 'make obj' without cleaning out all the .o files first.

Apparently, this also happened when the snapshot was built, so the binary
distribution now also has this problem (on 3 different architectures at
least).

- Frank