Desperately looking for a work-around to load and unload D shared libraries from C on OSX

bitwise via Digitalmars-d digitalmars-d at puremagic.com
Sat Sep 19 14:16:57 PDT 2015


On Saturday, 19 September 2015 at 16:53:28 UTC, Martin Nowak 
wrote:
> On Thursday, 17 September 2015 at 21:13:46 UTC, bitwise wrote:
>> He can simply create a second empty callback in VSTPluginMain 
>> which will pin his library:
>
> Yikes, pinning the library is really ugly hack around the 
> actual issue.
> Anyone has an idea how to use the crappy dyld API w/o crashing 
> on unload?
>
> If nothing helps we could try to add init/fini calls to 
> binaries like we do w/ ELF.

I wanted to attempt this myself, but I think I'm going to throw 
in the towel...

I wunderstand the mach-o format ok, and was able to get druntime 
to build as a shared library, but after spending some time 
looking through DMD's backend... I find myself very discouraged 
by the code quality.

Not trying to be mean, but that code was clearly not written with 
teamwork in mind. With the vast majority of methods and variables 
being named things like "bytes" or "SDshtidx", I find myself all 
but completely helpless.

I understand why people keep complaining about the backend and 
trying to say it should be swapped out for llvm or something.

     Bit


More information about the Digitalmars-d mailing list