DLL on LDC
Márcio Martins
marcioapm at gmail.com
Mon Nov 11 19:12:15 UTC 2019
Hi,
I am trying to create a simple DLL and a simple app that loads it
on Linux with end goal of having it work on MacOS.
Everything seems to work fine with DMD, but when I use LDC2 to
build the loader, I don't get the `shared static this()` and
`~this` called when I `dlopen()` and `dlclose()` my DLL. I am
opening with RDLD_NOW. I am a bit surprised that the issue is in
the loader, but it appears to be the case. I am building both
with `dub --compiler=ldc2`, an the DLL has `targetType
dynamicLibrary` in the dub.sdl, do I need to pass some extra
flags for dub or LDC2? Is it doable at all?
When I build with DMD I am getting a seg fault during `rt_term()`
at exit, at `__GI___pthread_mutex_destroy`, which makes it seem
like it's not really working that well.
As I understood it, LDC2 is the furthest ahead in terms of DLL
support on MacOS. Is this the case?
Does anyone have some insights or working setup they are willing
to share? :)
Thanks in advance for any help!
More information about the Digitalmars-d-learn
mailing list