Perhaps -L is just a linux feature, on Windows it only passes options to Optlink, and passing directories won't add them to search paths for library files.
E.g. if I have: main.d foo/test.d foo/test.lib <- compiled as a library and try to invoke: dmd main.d -I.\foo\ test.lib -L.\foo\ Optlink won't find the lib file: Warning 2: File Not Found foo.lib I always have to specify the full path to the lib file, e.g.: dmd main.d -I.\test2\ .\test2\foo.lib