Date: Tue, 26 Jan 1999 15:26:38 -0700 From: Nate Williams <nate@mt.sri.com> To: Terry Lambert <tlambert@primenet.com> Cc: Nate@primenet.com, Williams@primenet.com, <nate@mt.sri.com>, Mats@primenet.com, Lofkvist@primenet.com, <mal@algonet.se>, java@FreeBSD.ORG Subject: Re: TowerJ for FreeBSD Message-ID: <199901262226.PAA14679@mt.sri.com> In-Reply-To: <199901262216.PAA01731@usr07.primenet.com> References: <199901262216.PAA01731@usr07.primenet.com>
next in thread | previous in thread | raw e-mail | index | archive | help
> > > And how hard is it to add a feature allowing a FreeBSD binary (java) > > > load and run a Solaris shared library (the Solaris JIT) with/without > > > Solaris binary compatibility to begin with? > > > > Really hard. Hard enough that it will probably never be done. See > > postings on hackers on this where Terry Lambert bogusly declared it was > > trivial without understanding the details. > > The library is ELF, and is unrelocated, so it isn't Solaris specific > excepet for partially preresolved jump table vector names. Wrong. It makes Solaris system calls, using Solaris parameters and Solaris defines. > In general, the dependency is that most of these libraries are linked > against the Solais libc, and bring in symbols from there. Right. A FreeBSD 'binary' can't make Solaris libc calls correctly. > For example, a number of people have been using the Solaris CDE ELF > library to get an ELF Motif 2.0 implementation that they can link > against, since Sun used to offer the thing for download from their > WWW site, and you can get it on the Solaris "free" ($15) CDROM. Nobody has been using the Solaris CDE ELF library to build FreeBSD binaries. As was pointed a while back, you can't 'mix' a Solaris library and a FreeBSD binary. I'd even buy you dinner if you can make anything beyond a simple toy application work with the Solaris library. I've got a FreeBSD native application that uses Motif. I'll bet you dinner that you can't make it work with the Solaris ELF library. > It's pretty trivial (contrary to Nate's claims) to find the list of > interfaces affected by just truing to link the Motif library > directly. You'll get a list of unresolved externals. Prove it. Really, I'd love for you to prove me wrong. Hand-waving a long email messages stating that it's trivial mean nothing when in fact it doesn't work. Issues such as system calls (which are the biggest problem), different library functions, etc.. can all be worked around, but not 'trivialy'. If SVR4/Solaris emulation was a worthwhile goal, someone could continually maintain it like we do with the Linux emulation, but the fact of the matter is that it's not worth it (both in terms of the code required as well as the complexity in trying to switch to 'Solaris' mode from 'FreeBSD' mode and back in a single binary.) Nate To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-java" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199901262226.PAA14679>