On Tue, Jan 1, 2013 at 6:54 PM, Paul Wise <p...@debian.org> wrote:

> On Wed, Jan 2, 2013 at 12:14 AM, Michael Stapelberg wrote:
>
> > Only when not using the “official” compiler (gc), e.g. gccgo has support
> > for dynamic linking.
>
> Then we should use gccgo until the official compiler supports this.
>

go also doesn't support building as a shared library, because
#1 the go scheduler would have to have differn't bootstrapping code hooked
up (for gccgo it would be in libgo) and
#2  go uses split stacks[1].
But when it doesn't support building as a shared library, it will probably
be done with gccgo first.

>
> > AFAIK not, but I will add this to the list of questions I want to ask on
> > the Go mailing lists.
>
> Ok, please let us know about the results.
>

Henceforth when a go program depends on a go library, those go libraries
are ALWAYS compiled in statically. Static linking causes many problems for
distributions like Debian, and therefore this presents a significant hurdle
to quality packaging of go in Debian. Source-only distribution is perhaps
possible, but then AFAIK go library writers are not necessarily as careful
as C library writers to maintain source compatibility.

[1] http://gcc.gnu.org/wiki/SplitStacks

>
> -Shawn Landden

Reply via email to