Re: Error when building gcc w/ Go language on Solaris

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

 



On Sat, Apr 16, 2022 at 12:42 PM Jonathan Wakely via Gcc-help
<gcc-help@xxxxxxxxxxx> wrote:
>
> On Sat, 16 Apr 2022, 20:24 Matthew R. Wilson, <mwilson@xxxxxxxxxxxxxx>
> wrote:
>
> > On 04.16.2022 07:33, Jonathan Wakely wrote:
> > >On Sat, 16 Apr 2022, 06:40 Matthew R. Wilson, <mwilson@xxxxxxxxxxxxxx>
> > >wrote:
> > >
> > >> I am revisiting my attempts to build GCC with Go language support on
> > >> Solaris/SPARCv9.
> > >>
> > >> The error I get when I make is:
> > >> ../.././gotools/../libgo/go/cmd/go/main.go:10:16: error:
> > >>
> > /export/home/mwilson/gcc-build/gcc-11.2.0/host-sparcv9-sun-solaris2.11/gcc/context.o
> > >> exists but does not contain any Go export data
> > >>
> > >> 3) Set my PATH to: /opt/mrwgcc:/usr/bin:/usr/sbin
> > >>
> > >> 4) configured gcc 11.2 with a similar set of options as the
> > >> Solaris-provided gcc:
> > >>
> > >> ./configure --prefix=/opt/mrwgcc \
> > >>         --enable-languages=c,c++,go  --enable-shared \
> > >>         --enable-initfini-array \
> > >>         --disable-rpath --with-system-zlib --with-build-config=no \
> > >>         --without-gnu-ld --with-ld=/usr/bin/ld \
> > >>         --with-gnu-as --with-as=/opt/mrwgcc/bin/as
> > sparcv9-sun-solaris2.11
> > >
> > >Just a guess, but maybe the Go build uses sed or another command like
> > >that, and relies on the POSIX-conforming version in /usr/xpg4/bin
> > >rather than the /usr/bin one. Try putting /usr/xpg4/bin in your path,
> > >just after /opt/mrwgcc/bin
> >
> > Aha! What a great guess -- that fixed it! Thank you so much!
> >
>
> Great! We should document this, if we don't already. And even better would
> be if the build failed with a clear error mentioning the need for POSIX sed
> (or whichever command it was).

I'm happy to fix the POSIX sed requirement if we can find out where it comes in.

I can't seem to access any Solaris systems at the moment so I can't
recreate it myself.

It's true that the Go build requires objcopy.  It's interesting that
the error message refers to context.o.  At that point in the build
there should be context.gox in the libgo build directory, and the
compiler should find that one first.  And even if content.gox doesn't
exist for some reason, the context.o file should contain export data
in the ".go_export" section.  So I'm puzzled.

Ian



[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