Michael Tsang <miklcct@xxxxxxxxx> writes: > GCC 4.5 cannot be built on my machine. I've searched the web for reasons but I can't find them. My running system is Ubuntu 9.10 final. The building process aborts at stage 2. ... > cp/except.o: In function `nothrow_libfn_p': > except.c:(.text+0x1b47): undefined reference to `libc_name_p' > collect2: ld returned 1 exit status This change: 2009-04-21 Joseph Myers <joseph@xxxxxxxxxxxxxxxx> * ChangeLog, ChangeLog-1993, ChangeLog-1994, ChangeLog-1995, ChangeLog-1996, ChangeLog-1997, ChangeLog-1998, ChangeLog-1999, ChangeLog-2000, ChangeLog-2001, ChangeLog-2002, ChangeLog-2003, ChangeLog-2004, ChangeLog-2005, ChangeLog-2006, ChangeLog-2007, ChangeLog-2008, ChangeLog.ptr, ChangeLog.tree-ssa, NEWS, cfns.gperf: Add copyright and license notices. * cfns.h: Regenerate. * ChangeLog, ChangeLog-2004: Correct dates. added the __gnu_inline__ attribute to libc_name_p in cfns.h. That means that if the function can not be inlined, no definition will emitted. Evidently it was not inlined on your system. Since the definition in cfns.h is the only definition, this means that the function must be marked always_inline, or that __gnu_inline__ should be removed and the function should be marked static. Joseph, did gperf add the __gnu_inline__ attribute here? That is, do we need to get gperf to generate different output? Ian