<div dir="ltr">Hi dscho,<div>I'm programming "monkey see, monkey do" style. I have very little idea what I'm doing, trying to replicate the logic for mac loading dylibs in imagej-loader.</div><div><br></div><div>I've gotten pretty far, but at the end, I'm seeing the error, "JavaNativeFoundation: GetGlobalVM: JNI_GetCreatedJavaVMs() failed to get any VM" when I start an AWT app.</div><div><br></div><div>I am guessing that this is why you dlopened libjli <a href="https://github.com/imagej/imagej-launcher/blob/master/src/main/c/ImageJ.c#L264">here</a>. I do the same, but (so far) with Python's ctypes.CDLL. That doesn't let you specify RTLD_LAZY as a dlopen mode. So, I think that's the big difference between how you do things and how I do them. My first question is whether RTLD_LAZY is needed as the mode. My second question is why you needed to load libjli.dylib in the first place and, if you might grant me a third wish, my third question is whether you've seen this error before.</div><div><br></div><div>Thanks in advance, Mr. Wizard.</div><div><br></div><div>--Lee</div></div>