Pier Fumagalli wrote: > "[EMAIL PROTECTED]" <[EMAIL PROTECTED]> wrote: > > >>On Fri, 12 Apr 2002, Pier Fumagalli wrote: >> >> >>>>>Then it won't work... BTW, I hope you guys are not trying to load APR from >>>>>the VM, right? Because if so, I _really_ want to see how you can do it on >>>>>Mach-O kernel based Oses :) >>>> >>mod_jk2 is using APR, and on the java side the JNI and Unix socket >>implementations are using APR. In addition we'll use APR to access shm, >>etc. >> >>The socket transport will allways work - so if a VM can't load APR it can >>use socket transport and ignore the advanced features ( or wait for a >>fixed VM that supports JNI ). > > > It's not a matter of fixing the VM... > > >>>And to explain it better, on some Oses, such as Apple's MacOS/X, >>>System.load() will only load MH_BUNDLE libraries in the memory space, not >>>common DYLIBs. So, you'd have to have a MH_BUNDLE containing the dlopen() >>>(or however that function is called), so that you can load something like >>>APR, once that's loaded you register the functions and such, and >>>yadayadayada... Native loader... Way too compicarted... >> >>So the VM supports JNI, but the JNI functions can't use any library ? >>Sounds like a serious bug. Hopefully we'll find a workaround, or just use >>socket transport from java. > > > Nope... The VM can load JNI libraries when those are linked as MH_BUNDLE, > which is a great feature of Mach-O: it's basically the separation in concept > of "library" and "plug-in". A plug-in is a MH_BUNDLE, and that gets loaded > within the scope of the VM as RTLD_LOCAL does on dyld systems. Sure that a > plugin can rely on external libraries (DYLIB or RTLD_GLOBAL), but those need > to be read before the VM start to avoid runtime linkage errors (if there's a > dual definition of a symbol, with RTLD_GLOBAL I'm dead, as I'll never know > where my code will crash). > > That's why there's that nice environment *_PRELOAD (*=DYLD/LD), which links > the binary at process startup and will not make the process start if > something is not right. > > The JVM _is_ behaving correctly, no bug whatsoever, the problem is that you > don't have to confuse a pluging (MH_BUNDLE, RTLD_LOCAL) with a library > (DYLIB, RTLD_GLOBAL)... All nice and clean.
Is testing on moof.apache.org a good idea? man dlopen there shows the following: +++ BUGS An error that occurs while processing a dlopen() request results in the termination of the program. +++ > > >>>believe we were still waiting for Costin to get the approval for >>>SilverEgg's... >> >>jakarta-commons - I sent the proposal, it got the votes. > > > Craps another ml to check. :( > > Pier > > -- > I think that it's extremely foolish to name a server after the current U.S. > President. B.W. Fitzpatrick > > > > -- > To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> > For additional commands, e-mail: <mailto:[EMAIL PROTECTED]> > > > -- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>