On 3 November 2015 at 17:48, Mike Gaffney <[email protected]> wrote: > So the deal would be to get golang to compile against the rump kernel apis > libc and then try a hello world app? Basically treat rump as a new platform?
Yes. You could start by making a platform that linked to libc on NetBSD as an intermediate step, using the Solaris platform as a guide. Then get it to link to libc.a instead of libc.so, and the rump libraries. You probably need to use the system linker not the Go linker, which may make cross builds more complex. Justin > On Nov 3, 2015 4:02 AM, "Antti Kantee" <[email protected]> wrote: >> >> On 03/11/15 03:16, Mike Gaffney wrote: >>> >>> Hello, >>> I was looking at trying to get a golang application running under >>> rumprun >>> to eventaully be on AWS and was wondering if anyone could point me at any >>> starters or let me know where things are on that front? Otherwise I'm >>> just >>> going to start from scratch with the nginx hello world example. >> >> >> Go needs support for rump kernel syscalls in the Go implementation. The >> NetBSD support available in Go bypasses the public NetBSD API (libc) and >> hardcodes the trap instructions. Since rump kernels use a different syscall >> mechanism from a trap instruction, it doesn't work. I think the popular >> option is to do syscalls from Go for rump kernels (or for all of NetBSD?) >> like they are done on Solaris: through the libc interface. But, anyway, I >> don't have hands-on experience with Go, so I'm just repeating things others >> have kindly educated me with. >> >> For AWS, see here: >> >> https://www.freelists.org/post/rumpkernel-users/Amazon-EC2-support-now-in-Rumprun >> (and if someone wants to discuss AWS further, please fork this thread) >> >
