On Friday, 6 June 2014 at 16:33:27 UTC, Adam D. Ruppe wrote:
When you compile the final program, the library .d file needs
to be available too, either in the folder based on its name or
passed straight to dmd explicitly.
Despite the presence of the .lib file, the .d file is still
needed so it can get code prototypes and type names, etc., out
of it.
(If you have the .d though, the lib is rarely needed. Indeed,
the way I do most D libraries is to just pass all the .d files
to the compiler at once and forget about lib files.)
You are not ought to have .d files to link with library, because
to link you need only interfaces, not implementation (except for
templates, since they are not included in object files),
otherwise there would be impossible to create closed-source
developer libraries. You can generate .di files with dmd -c -o-
-H option and use them.