I tried to create a JNI library that - via C - accesses a D function. Calling D from C is not a problem, but when the whole stuff is wrapped into a JNI library, I get the following error message:

Error:
Undefined symbols:
  "_environ", referenced from:
      _environ$non_lazy_ptr in libphobos2.a(process_61b_495.o)
     (maybe you meant: _environ$non_lazy_ptr)

I know it's a Mac specific thing and a fix exists (cf. https://www.gnu.org/software/gnulib/manual/html_node/environ.html), however it doesn't work in my case. process.d accesses environ in a similar way. I am not sure whether I get it all wrong, or whether it isn't possible at all to do the JNI-C-D thing.

I have also read somewhere that JNI could be created directly using D, I haven't found an example, though. Does anyone know anything about it? This would of course be more convenient.

Reply via email to