This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
Re: -frepo not working?
- To: Lee Iverson <leei at ai dot sri dot com>
- Subject: Re: -frepo not working?
- From: Chad Gatesman <chadg at redrose dot net>
- Date: Wed, 16 Dec 1998 15:04:29 -0500
- CC: Alexandre Oliva <oliva at dcc dot unicamp dot br>, egcs at cygnus dot com, egcs-bugs at cygnus dot com
- Organization: Bristol Technology
- References: <199812161933.LAA14639@Canada.AI.SRI.COM>
Lee Iverson wrote:
> In message <98Dec16.141926est.26886@gateway.bristol.com> you write:
> > Lee Iverson wrote:
> >
> > >
> > > Bzzzt... Close but... -frepo is a *linker* command. Try adding it
> > > to the second line 'g++ -frepo -o repo-fail repo-fail.o'
> >
> > Umm...No.
> > This problem still exists if you add -frepo to the link line as well.
> >
>
> Perhaps I was a bit terse. After compiling with -frepo -c, you must
> then provide -frepo to the *linker* line as well:
>
> % g++ -c -frepo repo-fail.cc
> % g++ -frepo -o repo-fail repo-fail.o
> collect: recompiling repo-fail.cc
> collect: relinking
> ld: WARNING 84: /usr/lib/libm.so is not used for resolving any symbol.
> ld: WARNING 84: /opt/gnu/gcc/egcs-o32/lib/gcc-lib/mips-sgi-irix5/egcs-2.92.21/libgcc.a is not used for resolving any symbol.
> ld: WARNING 84: /usr/lib/libm.so is not used for resolving any symbol.
> ld: WARNING 84: /opt/gnu/gcc/egcs-o32/lib/gcc-lib/mips-sgi-irix5/egcs-2.92.21/libgcc.a is not used for resolving any symbol.
> %
>
> Notice the collect: lines! That is -frepo working.
Yes. I understood you, and I am saying it still does not work for me if I put -frepo on the link line. Here are the versions
I am using. Could it possibly be a problem there, or maybe a platform specific bug? I am using Linux 2.1.129 on an Intel
Pentium using libc.so.5.4.46.
chad:/tmp> g++ -v
Reading specs from /usr/local/lib/gcc-lib/i586-pc-linux-gnulibc1/pgcc-2.91.60/specs
gcc version pgcc-2.91.60 19981201 (egcs-1.1.1 release)
chad:/tmp> ld -v
GNU ld version 2.9.1 (with BFD 2.9.1)
chad:/tmp> g++ -frepo -c repo-fail.cc
chad:/tmp> g++ -frepo -o repo-fail repo-fail.o
repo-fail.o: In function `vector<int, __default_alloc_template<false, 0> >::push_back(int const &)':
repo-fail.o(.vector<int, __default_alloc_template<0, 0> >::gnu.linkonce.t.push_back(int const &)+0x35): undefined reference to
`vector<int, __default_alloc_template<false, 0> >::insert_aux(int *, int const &)'
collect2: ld returned 1 exit status
The actuall code I am writing uses STL extensively, and I do see collect run in that case, but it eventually craps out with
undefined symbols as well. And it does work with egcs-1.0.3.
--
Chad Gatesman
Software Engineer
Bristol Technology
http://www.bristol.com/