Take the tour ×  I am trying to create a static object written
in Go to interface with a C program (say, a kernel module or
something).  I have found documentation on calling C functions
from Go, but I haven't found much on how to go the other way.
What I've found is that it's possible, but complicated.  Here is
what I found:  Blog post about callbacks between C and Go  Cgo
documentation  Golang mailing list post  Does anyone have
experience with this? In short, I'm trying to create a PAM
module written entirely in Go.  share|improve this question You
can't, at least from threads that were not created from Go. I've
raged about this numerous times, and ceased developing in Go
until this is fixed. –  Matt Joiner May 25 '11 at 16:08 I heard
that it is possible. Is there no solution? –  tjameson May 25
'11 at 16:56 Go uses a different calling convention and
segmented stacks. You might be able to link Go code compiled
with gccgo with C code, but I have not tried this since I
haven't gotten gccgo to build on my sys