Out of symtab space
Norman Kohn
nvk at ddsw1.MCS.COM
Wed Aug 1 22:08:39 AEST 1990
In article <1598 at kuling.UUCP> fredriks at kuling.UUCP (Fredrik Stax{ng) writes:
>
> We are doing a large project in C++ on Interactive Unix with
>HCR/C++. We have came up against what evidently is a restriction in ld. It
>aborts with the message "ld internal error: fatal: symbol table overflow".
I have run into this on a large development project, both under
uport and Interactive. A temporary fix, depending on how large
your project is, is to reduce the number of externally defined
symbols.
1) group modules to make subroutines static, when possible
2) group related global storage items into structures:
the addressing of foo.a and foo.b is done by offsets from foo,
so that
struct
{ int a,b;} foo
generates one, not two, external symbols. Your code may
become more readable and your symbol table size will shrink.
3) it may be possible to do a partial link of some modules
and delete those symbols that are not required to be external
to the module group: but I haven't managed to do this.
--
Norman Kohn | ...ddsw1!nvk
Chicago, Il. | days/ans svc: (312) 650-6840
| eves: (312) 373-0564
More information about the Comp.unix.i386
mailing list