When bootstrapping GCC mainline on Solaris 8 and 9/x86 with gas and gld, I came across the error message /usr/sfw/bin/gld: error in /var/tmp//cctJaGJm.o(.eh_frame); no .eh_frame_hdr table will be created. Unfortunately, this message is completely useless as is since there is no indication whatsoever where the error lies. Unless you can figure this out with the help of readelf or elfdump, you'll have to build binutils with debugging information and run ld under a debugger to find what's wrong. In this case, it turned out to be another instance of a known problem (EH data after a ZERO terminator), but the message should be much more specific to ease the investigation.