Mail Archives: djgpp/1995/11/23/07:54:02
On 22 Nov 1995, Alex Schroeder wrote:
> My Problem is, that I cannot compile any code which uses the libgpp.a
> library (ie. the String class and all the other ones). I tried
[snip]
> String.cc(.text+0x1967): undefined reference to `lib_error_handler'
> String.cc(.text+0x4096): undefined reference to `ws(istream &)'
> String.cc(.text+0x40f1): undefined reference to `__uflow'
Your test program compiles and links for me without any problem. The
output of `gcc -v' and the environment settings you've posted seem also
to be OK; about the only problem I see is that in my case, gcc also adds
`-L/lib -L/usr/lib' to the ld command line which seems strange.
The functions which the linker doesn't find are all in the libgpp.a
library (some of them are also in libiostr.a), so it looks like something
is wrong with the linker reading libgpp.a. A few things I'd advise to
check:
1) The version of libgpp.a you are using. The one I have is
dated January 18 1995 and its size is 532308 bytes.
2) The version of gcc.exe you are using. Mine is dated February
1 1995 and its size is 79872 bytes.
3) Your system sets FILES= to a number which is too low, so that
ld.exe cannot open libgpp.a (but I think it should have printed a message
to that effect).
4) Your environment doesn't have enough space for all the
environment variables which gcc needs.
5) Try passing the --verbose option to ld to see what files it
opens while linking.
- Raw text -