That sounds right. With Linux, anyway, gcc calls ld with a "correct" command line - including libc. If I call ld directly, I have to put "-lc" on the command line (if I'm using libc).
It was a long, long time ago that I last used an MS compiler. As I recall, I called cc.exe, and it called cl.exe (and other things?). If you've got a "cc.exe", it might be worth a try...
Best,
Frank