Compiling gcc-3.4.6 on sparc Solaris 9

Daniel Santos
Thu Jul 14 18:40:51 GMT 2022


As to switching to gcc 4.9, can my currently installed gcc 3.4.6 build it ?
While sticking to the 3.4.6 version, I removed the solaris ld out of the way and am building it with gnu ld.

Right now I have the following error :

rm -f libv3test.a
ar cru libv3test.a testsuite_abi.o testsuite_allocator.o testsuite_hooks.o 
ranlib libv3test.a
touch testsuite_wchar_t
/export/home/dlsa/code/gcc-3.4.6/libstdc++-v3/scripts/create_testsuite_files \
  /export/home/dlsa/code/gcc-3.4.6/libstdc++-v3/testsuite `${PWDCMD-pwd}`
/bin/ksh: /export/home/dlsa/code/gcc-3.4.6/libstdc++-v3/scripts/create_testsuite_files: cannot execute
make[6]: *** [testsuite_files] Error 126
make[6]: Leaving directory `/export/home/dlsa/code/gcc-3.4.6-build/sparc-sun-solaris2.9/sparcv9/libstdc++-v3/testsuite'
make[5]: *** [all-recursive] Error 1
make[5]: Leaving directory `/export/home/dlsa/code/gcc-3.4.6-build/sparc-sun-solaris2.9/sparcv9/libstdc++-v3'
make[4]: *** [all] Error 2
make[4]: Leaving directory `/export/home/dlsa/code/gcc-3.4.6-build/sparc-sun-solaris2.9/sparcv9/libstdc++-v3'
make[3]: *** [multi-do] Error 1
make[3]: Leaving directory `/export/home/dlsa/code/gcc-3.4.6-build/sparc-sun-solaris2.9/libstdc++-v3'
make[2]: *** [all-multi] Error 2
make[2]: Leaving directory `/export/home/dlsa/code/gcc-3.4.6-build/sparc-sun-solaris2.9/libstdc++-v3'
make[1]: *** [all] Error 2
make[1]: Leaving directory `/export/home/dlsa/code/gcc-3.4.6-build/sparc-sun-solaris2.9/libstdc++-v3'
make: *** [all-target-libstdc++-v3] Error 2

Can anyone help me understand what this means ?
Daniel Santos

> On 14 Jul 2022, at 09:18, Rainer Orth <> wrote:
> Jonathan Wakely <> writes:
>> On Wed, 13 Jul 2022, 19:55 Daniel Santos via Gcc-help, <>
>> wrote:
>> Hello community,
>> I am trying to build gcc on Sparc Solaris 9.
>> So far I am creating a directory sibling to the source distribution directory and
>> running configure from there.
>> One thing I don’t understand is why the base configure script does not descend
>> automatically to the gcc subfolder.
>> I have to go in there and run configure again.
>> Which shell are you using?
>> See where it says to use ksh.
>> While running configure with the command line : ../../gcc-3.4.6/gcc/configure
>> —with-gnu-as —with-gnu-ld
>> and then make : it builds the files and when it gets to running ld I get the error :
>> /usr/local/sparc-sun-solaris2.9/bin/ld: target elf64-sparc not found
>> I am building this gcc with the same version installed via sunfkeeware
>> packages.
>> The reason for building it is that I need objective-c support and the package
>> does not have it.
>> This ld error indicates that the ld executable being run is from solaris, and not
>> the gnu one I have in /usr/local/bin/ld
>> Can anyone shed some light on this ?
>> The installation instructions do say to use the native linker, not the GNU binutils
>> one.
>> Again, see
>> Passing --with-gnu-ld is wrong if it's finding and using the Solaris linker. Either
>> adjust your PATH so the GNU one is found first, or stop telling GCC it's GNU ld when
>> it isn't.
> Besides, because GCC on Solaris supports two incompatible versions of ld
> (Solaris ld and GNU ld), it is crucial to specify the path to the linker
> you want to configure with with --with-ld=<path to ld> (both for
> /usr/ccs/bin/ld and some version of GNU ld).  Otherwise, PATH changes
> would randomly break the resulting gcc.
> If you really want to use GNU ld (I don't know why you would, though),
> please build and use a recent one: at least what's recommended in
> install.texi.  You'd probably be able to use GNU ld from current
> binutils 2.38, too.
> On top of that, I wouldn't bother with GCC 3.4 at all.  Instead, please
> use the latest release still supporting Solaris 9, GCC 4.9.4 It's way
> better tested and supported than the ancient GCC 3.4.  Please consult
> the Solaris sections of the bundled install docs in
> gcc/doc/install.texi.  It contains many hints and caveats to consider
> when building GCC.  The online version on is for GCC trunk
> only: everything pertaining to Solaris versions no longer supported
> (i.e. before Solaris 11.3) has been removed.
> 	Rainer
> -- 
> -----------------------------------------------------------------------------
> Rainer Orth, Center for Biotechnology, Bielefeld University

More information about the Gcc-help mailing list