On Mon, Apr 04, 2011 at 04:10:15PM -0700, ron minnich wrote:
> 
> On Mon, Apr 4, 2011 at 10:27 AM, Lucio De Re <lu...@proxima.alt.za> wrote:
> 
> > May I suggest that we identify Go executables, because they may not run
> > under 9vx, as different from Plan 9 executables and adjust the Plan 9
> > kernel to identify these and avoid running them under 9vx?
> 
> 
> um, yuck :-)
> 
> anyway, all you're saying is "don't run go on 9vx". That's a solved problem 
> :-)
> 
No, and no "yuck", either: Go executables are different animals and
they are allowed to be identified as such.  Until they are not, when
they are allowed to become the same animal.

As for not running Go on 9vx, that's a pain, I have such a nice 9vx
installation on my Ubuntu 32-bit laptop that it almost fools me into
believing it's Plan 9.  I don't always have a convenient CPU server at
hand to run Go on it.

And maybe it's just me being uninformed, but I have this suspicion that
you need a Go toolchain with Plan 9 targets to produce Plan 9 executables.
Maybe I should phrase this as a question: does the default Go toolchain
produce Plan 9 executables or is a separate toolchain required for it?
I'm pretty certain there's a need for two toolchains, but I'll be very
happy to be proven wrong (and Ron right, of course).

        The proof would be in the pudding: I tried to compile hell-o.go
        (I guess that will become a benchmark :-) under an unadulterated
        Go toolchain, then under a Go toolchain built for the Plan 9
        target (GOOS=plan9) and the object code produced showed distincly
        different sizes.  I don't have the details at my fingertips now,
        this is from memory.

And for Cinap, a challenge I wish I had the time and skills to take on
myself: can linuxemu be added as a much thinner shim to 9vx to run Linux
executables?  I can think of one very interesting door that would open,
there may be others.

++L

Reply via email to