Here's the test case: $ echo 'main(){}' | gcc -B/opt/binutils/head/bin/ -x c -fpie -pie - /usr/lib/libc_nonshared.a(elf-init.oS): In function `__libc_csu_init': elf-init.c:(.text+0x1d): undefined reference to `__init_array_end' elf-init.c:(.text+0x23): undefined reference to `__init_array_start' /usr/lib/libc_nonshared.a(elf-init.oS): In function `__libc_csu_fini': elf-init.c:(.text+0x79): undefined reference to `__fini_array_end' elf-init.c:(.text+0x7f): undefined reference to `__fini_array_start' collect2: ld returned 1 exit status
It seems this change might be responsible: 2005-03-22 H.J. Lu <[EMAIL PROTECTED]> * emultempl/elf32.em (gld${EMULATION_NAME}_provide_bound_symbols): New (gld${EMULATION_NAME}_finish): Call gld${EMULATION_NAME}_provide_bound_symbols to provide __preinit_array_start, __preinit_array_end, __init_array_start, __init_array_end, __fini_array_start and __fini_array_end. * scripttempl/elf.sc: Don't provide __preinit_array_start, __preinit_array_end, __init_array_start, __init_array_end, __fini_array_start nor __fini_array_end. Additionally, there seems to be nothing in the testsuite testing -pie (apart from frv) which of course is not ideal. Thanks. -- Summary: -pie broken Product: binutils Version: 2.17 (HEAD) Status: NEW Severity: normal Priority: P2 Component: ld AssignedTo: unassigned at sources dot redhat dot com ReportedBy: gschafer at zip dot com dot au CC: bug-binutils at gnu dot org GCC host triplet: i686-pc-linux-gnu http://sources.redhat.com/bugzilla/show_bug.cgi?id=878 ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is. _______________________________________________ bug-binutils mailing list bug-binutils@gnu.org http://lists.gnu.org/mailman/listinfo/bug-binutils