Current status of DLLs

Benjamin Thaut code at benjamin-thaut.de
Thu Nov 8 10:35:47 PST 2012


Am 08.11.2012 08:43, schrieb Jakob Ovrum:
> On Wednesday, 7 November 2012 at 10:24:25 UTC, Benjamin Thaut wrote:
>> For example: Exporting the Module init symbol is not supported, so
>> every module that only exists in a dll will generate a linker error.
>> Also I had some cases where even the vtable symbol did not get
>> exported (despite the that the class was declared as export) and
>> caused yet another linker error. Also there are quite some issues with
>> thread local storage and data symbols are not supported at all by dmd.
>> The only thing that truly works is exporting C-Style functions or COM.
>
> Actually, when making DLLs with GDC, the module init is automatically
> exported.
>
>


Yes, but I talk the reference implementation (DMD) here.

GDC has various other problems:
  - The latest binary release is 2.058
  - Phobos and druntime are not trivially recompileable without 
compiling the whole thing beforehand
  - Couldn't find clear compiliation setup documents.
  - Phobos and druntime have a completely different folder structure 
(for whatever reason)

Also the thread local storage issue is a druntime issue AFAIK and exists 
within gdc as well.

Kind Regards
Benjamin Thaut


More information about the Digitalmars-d-learn mailing list