This is the mail archive of the
libstdc++@sourceware.cygnus.com
mailing list for the libstdc++ project.
Re: libstdc++-2.90.4 and egcs-19990314 on i586-pc-linux-gnu
- To: girod@stybba.ntc.nokia.com
- Subject: Re: libstdc++-2.90.4 and egcs-19990314 on i586-pc-linux-gnu
- From: "Martin v. Loewis" <martin@mira.isdn.cs.tu-berlin.de>
- Date: Sat, 20 Mar 1999 14:40:23 +0100
- CC: libstdc++@sourceware.cygnus.com
- References: <Pine.HPP.3.96.990319125121.4097A-100000@rhino.cygnus.com> <1yzp582vd7.fsf@sinkku.ntc.nokia.com>
> % c++ -fnew-abi -fno-honor-std -I /home/marc/H-libstdc++/include -L/home/marc/H-libstdc++/lib -Wl,--rpath -Wl,/home/marc/H-libstdc++/lib 27hello.cc -o 27hello
[...]
> /tmp/cc6plaaa.o(.text+0x4): undefined reference to `endl(ostream &)'
[...]
> % CFLAGS="-g -O2 -fnew-abi" CXXFLAGS="-g -fvtable-thunks -D_GNU_SOURCE -fno-implicit-templates -fnew-abi" ../libstdc++-2.90.4/configure --prefix=${PWD%/*}/H-libstdc++
Correct me if I'm wrong: You've configured the library with -fnew-abi
(ie. with implicit honor-std), and then compile the program with
-fno-honor-std.
If that's the case, it isn't surprising that it won't find endl - The
library only has std::endl. It is also not surprising that it is
looking for endl instead of std::endl - you've been telling the
compile to ignore std::.
In short, use your flags consistently.
Regards,
Martin