GNU's binutils and GCC have both been ported to Serenity and work right now. So not very far away at all! I got it working properly ~1 month ago, here's a video I posted that day:
https://www.youtube.com/watch?v=lO4XBggjZGk
(A lot of performance work followed after that recording. There's still a lot to do, but the 30 second compile time is now down to ~2.5 seconds. 80% of the speedup was from implementing DMA disk transfers, and the other 20% from a faster malloc().)