This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
link errors using the latest snapshot
- To: gcc at gcc dot gnu dot org
- Subject: link errors using the latest snapshot
- From: markh at landmark dot com
- Date: Fri, 15 Sep 2000 13:57:56 -0400 (EDT)
- cc: markh at saturn dot landmark dot com
GCC Maintainers,
The linker is generating the following errors while linking a small
program I have:
__builtin_delete (code)
bad_typeid virtual table(data)
operator new(unsigned long, void *)(code)
__builtin_new (code)
ios virtual table(data)
type_info type_info function(code)
stdiobuf virtual table(data)
type_info virtual table(data)
bad_cast virtual table(data)
bad_typeid::~bad_typeid(void)(code)
bad_cast type_info function(code)
ostream::operator<<(ostream &(*)(ostream &))(code)
filebuf virtual table(data)
ios type_info function(code)
exception type_info function(code)
exception virtual table(data)
bad_cast::~bad_cast(void)(code)
bad_typeid type_info function(code)
__builtin_vec_delete (code)
__builtin_vec_new (code)
__user_type_info type_info function(code)
When I track down these symbols, for example, 'operator new', using
'nm', it reports the following:
libgcc.a:new.o:00000000 t operator new(unsigned long, void *)
The curious item here is the lower case 't'. Normally, functions are
identified with an upper case 'T', and this appears to be why the
linker (/usr/ccs/bin/ld) is saying it cannot find the function code in
libgcc.a. Can someone explain what the lower case 't' indicates? It
is not documented in the 'nm' (binutils) info files.
Here are some more details about my gcc snapshot build:
O/S: HP-UX 11.00
Canonical triplet: hppa2.0n-hp-hpux11.00
Compiler used to build snapshot: gcc version 2.95.2
Binary utilities version: binutils 2.10
Configuration switches:
--enable-languages=c++
--enable-threads=posix
--enable-version-specific-runtime-libs
--with-gnu-as
--
## Mark Harig
## Landmark Systems, Reston, Virginia, USA
## Email: mharig@landmark.com