链接器工具错误 LNK2011

未链接预编译对象;图像可能无法运行

如果使用预编译标头,LINK 要求使用预编译标头创建的所有对象文件都必须链接在一起。 如果有一个源文件用于生成与其他源文件一起使用的预编译标头文件,那么你现在必须包含与预编译标头文件一起创建的目标文件。

例如,如果编译名为 STUB.cpp 的文件以创建与其他源文件一起使用的预编译标头,则必须链接到 STUB.obj,否则将收到此错误。 在以下命令行中,第一行用于创建预编译标头 COMMON.pch,其与第二行和第三行的 PROG1.cpp 和 PROG2.cpp 一起使用。 文件 file STUB.cpp contains 仅包含 #include 行(与 PROG1.cpp 和 PROG2.cpp 中的 #include 行相同)并且仅用于生成预编译标头文件。 在最后一行中,STUB.obj 必须链接到其中以避免 LNK2011。

cl /c /Yccommon.h stub.cpp
cl /c /Yucommon.h prog1.cpp
cl /c /Yucommon.h prog2.cpp
link /out:prog.exe stub.obj prog1.obj prog2.obj