Debugging a Program With dbx

Example 1: internal free space exhausted

The most common of the full relink messages is the internal free space exhausted message:


    
 $ cat test1.c 
    
 int main() { return 0; }
    
 $ rm a.out
# This creates test1.o
 $ cc -xildon -c -g test1.c
# This creates a.out with minimal debugging information.
 $ cc -xildon -z i_verbose -g test1.o
# A one-line compile and link puts all debugging information into a.out.
 $ cc -xildon -z i_verbose -g test1.c
    
 ild: (Performing full relink) internal free space in output file exhausted (sections)
    
$

These commands show that going from a one-line compile to a two-line compile causes debugging information to grow in the executable. This growth causes ild to run out of space and do an full relink.