Re: Compiling gcc-3.4.6 on sparc Solaris 9

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Jonathan Wakely <jwakely.gcc@xxxxxxxxx> writes:

> On Wed, 13 Jul 2022, 19:55 Daniel Santos via Gcc-help, <gcc-help@xxxxxxxxxxx>
> 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 https://gcc.gnu.org/install/specific.html#x-x-solaris2 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 https://gcc.gnu.org/install/specific.html#x-x-solaris2
>
> 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 gcc.gnu.org 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




[Index of Archives]     [Linux C Programming]     [Linux Kernel]     [eCos]     [Fedora Development]     [Fedora Announce]     [Autoconf]     [The DWARVES Debugging Tools]     [Yosemite Campsites]     [Yosemite News]     [Linux GCC]

  Powered by Linux