Golang on Genode

Petar Stupar atraari at ...9...
Thu Mar 31 15:12:00 CEST 2016


Hello again,

Norman thank you for this insight.

On Thu, Mar 31, 2016 at 8:46 AM Norman Feske <norman.feske at ...1...>
wrote:

> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> Hello,
>
> > That said I would be happy if Go worked, but to me it would be too
> > much effort to port enough of the standard library to make Genode a
> > viable platform for a lot of existing Go programs. I came to Go
> > from Plan 9 and think it would hard to leverage the flexibilty of
> > Genode with a language so strongly influenced by unix.
>
> whereas I don't know whether or not Go would be good language to write
> Genode components in, I think that the ability to run Go programs
> directly on Genode would be very interesting. For example, the custom
> applications by Inversepath (e.g., for file encryption) for the USB
> Armory are written in Go. Right now, we need to run them on top of
> Linux on the USB Armory. With Genode supporting Go directly, we could
> eventually move those applications to the Genode world.
>
> On a technical level, I have a question though: As far as I know, the
> Go tool chain produces statically-linked binaries. Is this mandatory
> or is it possible to produce position-independent code (to be loaded
> by a dynamic linker) as well? I ask because I'm planning to move
> Genode's kernel-specific code into the dynamic linker and keep the
> actual applications and libraries kernel-agnostic. If Go executables
> must always be statically linked, this concept wouldn't work for such
> programs, which would be unfortunate.
>

This is exactly why I needed to ask.
It is possible since 1.5 version via "-buildmode=c-shared" flag. It can
even export packages as static libraries as well as shared objects that can
be linked into C programs.
Gccgo on the other hand has had a limited corresponding option.

Unfortunately I'd need to build 1.4 version first so that it could
cross-compile later versions (1.6 is current). Since 1.5 version of Golang
most of C code has been replaced by go code.

I'll see if I can make a couple of tests during the weekend and will get
back to y'all.


>
> Cheers
> Norman
>
> - --
> Dr.-Ing. Norman Feske
> Genode Labs
>
> http://www.genode-labs.com · http://genode.org
>
> Genode Labs GmbH · Amtsgericht Dresden · HRB 28424 · Sitz Dresden
> Geschäftsführer: Dr.-Ing. Norman Feske, Christian Helmuth
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v2.0.22 (GNU/Linux)
>
> iEYEARECAAYFAlb8wlwACgkQQwppp8aV4siiTwCfQf1ZG5biK/k+/N9j3dhPRxen
> vwUAnjqhg+oc3qUlbpV1DHaQ1oPYrsHj
> =rXt8
> -----END PGP SIGNATURE-----
>
>
> ------------------------------------------------------------------------------
> Transform Data into Opportunity.
> Accelerate data analysis in your applications with
> Intel Data Analytics Acceleration Library.
> Click to learn more.
> http://pubads.g.doubleclick.net/gampad/clk?id=278785471&iu=/4140
> _______________________________________________
> genode-main mailing list
> genode-main at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/genode-main



Regards,
P.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.genode.org/pipermail/users/attachments/20160331/f3f101dc/attachment.html>


More information about the users mailing list