Dynamically loading a D dynamic library from a c++ program

John Colvin via Digitalmars-d-learn digitalmars-d-learn at puremagic.com
Fri Sep 26 12:52:26 PDT 2014


On Friday, 26 September 2014 at 16:43:30 UTC, Olivier Leduc wrote:
> Hello,
>
> I need to use a C++ SDK to create a plugin an existing closed 
> source c++ application and I would like to know if its possible 
> to use D for that task.
>
> Would is be possible to port the SDK header files and call the 
> exposed functions inside the C++ program from a D dynamic 
> library?
>
> Is it possible at all?
>
> Thank you very much!

Yes, but it depends on the complexity of the headers. C++ 
templates aren't supported for example. There have been recent 
improvements to C++ compatibility, including namespace support, 
methods etc. and work is ongoing to get even more working.

How large is the API? Sometimes the easiest approach is to create 
a simple extern "C" wrapper in C++ and then call that from D, as 
D has excellent C compatibility. See http://dlang.org/interfaceToC


More information about the Digitalmars-d-learn mailing list