这是一系列至少两个密切相关但不同的问题的一部分.我希望我能分别问他们做对了.
我试图让我的Visual C++ 2008应用程序在没有C运行时库的情况下工作.这是一个没有MFC或其他花哨的东西的Win32 GUI应用程序,只是简单的Windows API.
所以我将Project Properties - > Configuration - > C/C++ - > Advanced - > Omit Default Library Names设置为Yes(编译器标志/Zl)并重建.让我假装我写了一个合适的入口点函数,这是我的另一个问题的主题.
我收到两个链接器错误; 他们可能是相关的.链接器抱怨无法解析的外部符号__fltused和_memcpy在foobar.obj.毋庸置疑,我在我的程序中没有明确使用,但我确实memcpy在某处使用foobar.cpp.(我会使用,CopyMemory但结果证明是#defined与memcpy... 相同)
(我以为我可以memcpy通过使用编译器内部函数来解决问题#pragma intrinsic(memcpy),但这没有区别.)
如果我查看预处理器输出(添加/P到编译器命令行),我看到没有引用任何一个__fltused或_memcpy在foobar.i.
所以,我的问题是:这些链接器错误来自何处,以及如何解决它们?