From mboxrd@z Thu Jan 1 00:00:00 1970 MIME-Version: 1.0 In-Reply-To: <20120712055118.2e15abf3@vardo.ethans.dre.am> References: <7c8f9ee75eee1c9d33beb57da78e298e@quintile.net> <20120712055118.2e15abf3@vardo.ethans.dre.am> Date: Tue, 17 Jul 2012 14:16:08 -0700 Message-ID: From: Christopher Nielsen To: Fans of the OS Plan 9 from Bell Labs <9fans@9fans.net> Content-Type: text/plain; charset=UTF-8 Subject: Re: [9fans] 8c and elf shared libraries Topicbox-Message-UUID: a3284c9e-ead7-11e9-9d60-3106f5b1d025 On Wed, Jul 11, 2012 at 9:51 PM, Ethan Grammatikidis wrote: > On Wed, 11 Jul 2012 17:15:26 +0100 > "Steve Simon" wrote: > >> Various projects have worked on 8c to make it generate code for other OSs, >> have any of these resulted in code that could generate a very _very_ simple >> ELF shared library sutiable for linux? >> >> -Steve >> > > The 8l in Go can produce ELF binaries -- it's the linker rather than > the compiler you want to look at for this. Last I heard, Go's 8l wasn't > compatible with Plan 9's 8c, but there's an 8c in Go so that doesn't > matter too much. I'm sure some Go fans want to use system C libraries > by dynamic linking, but I'm not so sure about producing a linkable > library. Though I cannot find the message now, I recall Russ commenting to someone that the Go linker is not tooled for C ELF binaries; it is very Go specific. Having worked on the NetBSD port and had to spelunk the linker, I believe that to be true. Russ would be the better authority, though. The ?c compilers included with Go are derivatives of Inferno's ?c compilers. -- Christopher Nielsen "They who can give up essential liberty for temporary safety, deserve neither liberty nor safety." --Benjamin Franklin "The tree of liberty must be refreshed from time to time with the blood of patriots & tyrants." --Thomas Jefferson