On Thu, Dec 31, 2009 at 12:04 AM, Andrew Hutchinson <andrewhutchin...@cox.net> wrote: > > Dave Korn wrote: >> >> Rafael Espindola wrote: >> >>>> >>>> It's not a valid option for ld. It *is* a valid option for the >>>> collect2 >>>> driver/wrapper executable that gcc uses to invoke ld, which suggests to >>>> me >>>> that the AVR port must be configured not to build collect2, but that it >>>> is >>>> going to need to do so if it wants to use LTO/WHOPR. See use_collect2 >>>> in >>>> gcc/config.gcc >>>> >>> >>> Or you could port gold to AVR and use the plugin :-) >>> >> >> I hadn't checked, but yeah, since AVR is an ELF platform, that's a nice >> solution too. There might still be reason to build a collect2, for >> interop >> with older binutils. >> >> cheers, >> DaveK >> >> >> > > Thank you David and Rafel > > I will dig further into collect2. I had noted that avr.h has the following: > > > /* This is undefined macro for collect2 disabling */ > #define LINKER_NAME "ld"
That's indeed going to break LTO. Richard. > Also, the MINGW host is the most significant for the AVR target - and > problems with collect2 may be related to maintaining compatibility to that. > > Andy > >