Problem with environ variable (Mac OS X)
Chris
wendlec at tcd.ie
Thu Sep 20 08:07:06 PDT 2012
On Wednesday, 19 September 2012 at 17:31:41 UTC, Jacob Carlborg
wrote:
> On 2012-09-19 12:35, Chris wrote:
>> 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.
>
> A fix for that was applied last year. Which version of the
> compiler are you using?
>
> https://github.com/D-Programming-Language/phobos/blob/master/std/process.d#L60
Thanks for your answer. I used dmd 2.051 which is still my system
default due to compatibility issues (deprecated methods etc.). It
didn't occur to me that it's (hopefully) the compiler version,
especially because I saw the code snippet in process.d and didn't
know it was a recent fix. I'll try the latest version.
More information about the Digitalmars-d-learn
mailing list