Actually ignore that last comment, they are producing libs not dlls. Funny how all three ways of linking work...
On Windows, when building a DLL, compilers typically produce an "import library" alongside it, which has a .lib extension like static libraries. The executable links with the import library, but needs to have the DLL on the system path at runtime.