【发布时间】:2018-02-11 22:39:10
【问题描述】:
考虑一个名为Exe 的可执行文件,它依赖于一个名为Lib1 的静态库,而Lib1 依赖于另一个名为Lib2 的静态库,所以:
Exe -> Lib1 -> Lib2 (where '->' marks dependency)
假设我从Lib1 的附加库包含中删除了Lib2。根据我的经验,Lib1 仍然可以编译,但是当我尝试编译 Exe(链接到 Lib1)时,会出现链接器错误,指出 Lib2 符号从 Lib1 中丢失。
有没有办法在编译Lib1 时“检测”未解析的符号,而无需通过编译Exe 来获得Lib1 中未解析符号的通知?如果不是,为什么?
【问题讨论】:
-
lib1是 DLL 还是静态库? -
一个静态库。
标签: c++ visual-studio linker shared-libraries