Search code examples
linuxgoubuntu-12.04ldgccgo

gccgo on Precise


When trying to link with gccgo on Precise, I get this linking error:

matt@matt-1005P:~/src/gopath/src/meme$ gccgo cmd/meme/main.go -o meme
/usr/bin/ld: cannot find -lgcc_s
collect2: error: ld returned 1 exit status

There are reports of this error, but no clean solutions. How do I fix it?

gccgo (Ubuntu/Linaro 4.7.0-0ubuntu4) 4.7.0

Linux matt-1005P 3.2.0-24-generic-pae #38-Ubuntu SMP Tue May 1 16:40:26 UTC 2012 i686 i686 i386 GNU/Linux


Solution

  • This was recently brought up on the golang-nuts group: compiling with gccgo from packaged binaries.

    It's a known issue in Ubuntu (Bug #966570). To work around it, you can link with the static libgcc by specifying -static-libgcc in the gccgoflags. i.e.

    go build -compiler gccgo -gccgoflags '-static-libgcc'