http://gcc.gnu.org/install/specific.html#ix86-x-solaris210 says to use /usr/bin/ksh as CONFIG_SHELL on solaris2.
When you do so, gcc-4.5.0/configure emits the following text: > $TOOL/gcc/4.5.0/gcc-4.5.0/configure > --prefix=$TOOL/gcc/4.5.0/i386-pc-solaris2.10 --with-gnu-as --with-gnu-ld > --enable-shared --enable-lto --with-libelf=/usr/local --enable-gold > --enable-stage1-languages=c,c++ i686-pc-solaris2.10 configure: WARNING: you should use --build, --host, --target checking build system type... i686-pc-solaris2.10 checking host system type... i686-pc-solaris2.10 checking target system type... i686-pc-solaris2.10 checking for a BSD-compatible install... /opt/sfw/bin/install -c checking whether ln works... yes checking whether ln -s works... yes checking for a sed that does not truncate output... /opt/sfw/bin/sed checking for gawk... gawk /tool/gcc/4.5.0/gcc-4.5.0/configure: : cannot execute /tool/gcc/4.5.0/gcc-4.5.0/configure: intl: not found ... and then the rest of the normal config output The result of the "cannot execute" is that gold is not built and LTO silently does nothing. The problem can be fixed by converting line 3100 of configure as follows. Convert configdirs="`echo " ${configdirs} " | sed -e 's/ ld / gold /'`" into configdirs=`echo " ${configdirs} " | sed -e 's/ ld / gold /'` -- Summary: syntax error in gcc-4.5.0/configure for ksh Product: gcc Version: 4.5.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: bootstrap AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: Daniel dot Davies at xerox dot com GCC build triplet: i386-pc-solaris2.10 GCC host triplet: i386-pc-solaris2.10 GCC target triplet: i386-pc-solaris2.10 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44621