Thanks. I found that on Solaris 11 the 64 bit libs are generated under 
/usr/gnu/lib/64 when gcc was configured with --prefix= /usr/gnu. Everything 
works on Solaris 11. However, I am facing problems on Solaris 10 as it 
seems there are no 64-bit libs generated there. I will ask another question 
if I can't seem to find a way.

Thanks so much for helping out on this.

On Friday, September 28, 2018 at 6:17:39 PM UTC-7, Ian Lance Taylor wrote:
>
> On Fri, Sep 28, 2018 at 5:33 PM,  <aman...@cohesity.com <javascript:>> 
> wrote: 
> > Hi Ian, 
> >    Setting GCCGO env variable helped. I basically compiled, 
> helloworld.go 
> > with the following options and it compiled a 64 bit exectable: 
> > 
> > CC=/home/amandeep/workspace/mygcc.sh 
> > GCCGO=/home/amandeep/workspace/mygccgo.sh CGO_CFLAGS='-m64' 
> > CGO_LDFLAGS='-m64' GOARCH=sparc64 CGO_ENABLED=1 go build 
> -gccgoflags=-m64 
> > helloworld.go 
> > 
> > amandeep@s113ldom1:~/workspace$ file helloworld 
> > helloworld:           ELF 64-bit MSB executable SPARCV9 Version 1, 
> > dynamically linked, not stripped 
> > 
> > However, I still can't run the executable: 
> > amandeep@s113ldom1:~/workspace$ ./helloworld 
> > ld.so.1: helloworld: fatal: /usr/gnu/lib/libgo.so.13: wrong ELF class: 
> > ELFCLASS32 
> > Killed 
> > 
> > Does it mean that I need to compile gcc from source again with 64-bit 
> hack 
> > i.e. by running gcc configure with CC=/path/to/mygcc and recompile it? 
>
> You'll need to set LD_LIBRARY_PATH to point to the directory with your 
> 64-bit libgo.so. 
>
>
> > When I said "a 32 bit archive" I meant the .a on which output of file 
> > command looks like the following: 
> > amandeep@s113ldom1:~/workspace$ file 
> > /opt/go_pkgs/pkg/gccgo_solaris_sparc64/github.com/golang/libglog.a 
> > /opt/go_pkgs/pkg/gccgo_solaris_sparc64/github.com/golang/libglog.a: 
> > current ar archive, 32-bit symbol table 
> > 
> > I assumed that the error wrong ELF class: ELFCLASS32 was related to the 
> > archive created with incorrect compiler options. 
>
> Pedantically speaking, this is about the objects in the archive, not 
> the archive itself. 
>
> Ian 
>

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to