On Wednesday, 25 October 2017 at 16:05:48 UTC, Mike Parker wrote:
In preparation for an upcoming blog series, and partly as a
reaction to the "Windows is a second-class citizen" criticisms
that have been cropping up lately, I've put together a primer
on getting set up to use C and D together on Windows. It
includes some background on why we need to install the MS
toolchain to produce 64-bit binaries.
LLVM's LLD is another option for linking on Windows (and
cross-linking to Windows from other platforms); they used not to
support debuginfos (.pdb), not sure what the current state is.
`lld-link.exe` and `llvm-lib.exe` work as drop-in replacements,
reading the same environment variables and exposing the same
Recent LDC integrates both the linker and the archiver/librarian
(in the LDC executable directly - increasing the size of the LDC
executable by about 10% IIRC).
The MS libs are obviously still required. They can be compressed
to ~32 MB. The redistribution of the static libs is unclear,
that's why I haven't pursued this further, but that's basically
the only thing standing in the way of releasing a fully
self-contained LDC package with a compressed size of roughly 50
MB (64-bit libs only).