【发布时间】:2019-03-16 01:59:21
【问题描述】:
所有这些都在 msbuild 的上下文中,但我确信无论构建系统如何,一般原则都适用。我正在更新一些 vcxproj 文件以构建一些单元测试(一个 DLL)并且遇到了 LNK2001 错误,指出在 dbghelp.lib(Windows SDK)中没有找到对某些函数的引用。
将我的 unittest vcxproj 文件与与我的测试内容(一个 Lib)关联的 vcxproj 进行比较时,我没有看到任何指向 dbghelp.lib 的链接。我的同事告诉我,在 Lib 中,您只需解析您在 lib 中使用的引用,但对于 Exe/Dll,您需要解析所有引用。
我的猜测是,在一个 Lib 中,使用什么引用由该 lib 的作者控制,因此只需要解析使用的引用。对于 Exe/Dlls,没有这样的保证,所以所有的引用都需要被解析。这听起来对吗?还有比这更多的吗?
相关,如果我想了解更多信息,是否有任何涵盖该主题的好书推荐?
【问题讨论】: