I've just updated a linux source tree to the latest version (probably from Linus's public tree) and then tried to compile it (for x86_64) using gcc 4.7.3 and binutils 2.32.2 on a system running Ubuntu 13.10. While not the newest gcc, it isn't that old.
The linker is reporting that some of the compiled .o files are not valid object files. 'file' reports them as valid ELF, but objdump just reports them as invalid. Something must be very wrong with the generated object files. I don't build that often, so can't say when it last worked. Probably not older than 4.12. Everything builds ok with gcc 5.4.0 on Ububtu 16.04. David