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