Clang,Microsoft链接器和标准库

我已经使用Microsoft C ++成功构建了Clang,并且我正在尝试编译一个hello world测试用例; 它可以生成一个目标文件,链接标准库是剩下的绊脚石:

hello-202520.o : error LNK2019: unresolved external symbol _printf referenced in function _main LINK : error LNK2001: unresolved external symbol _mainCRTStartup 

前几年有评论称Clang还没有进行Windows链接,但我得到了那些过时的印象,现在它确实能够生成Windows格式的目标文件:

 clang -c hello.c ren hello.o hello.obj link hello.obj 

…没有barf,所以文件格式似乎是正确的,但仍然得到未解决的外部符号错误。 可能的猜测是Microsoft编译器标记其输出目标文件,并指示他们需要链接的标准库,而Clang没有,并且眼睛对相应目标文件的hex转储似乎证实了这一点,并给出了一个暗示链接器命令行使用:

 link /defaultlib:libcmt /defaultlib:oldnames hello.obj 

我对这个阶段寄予厚望,但是它仍然给出了同样未解决的外部符号错误。

我还缺少什么?

结果certificateClang默认生成32位代码,但我使用的是64位MSC,并且随着移动到x64,C符号上的前导_已被删除,因此在clang命令行上指定-m64可以完成这项工作。