gpt4 book ai didi

c++ - 如何在 Visual Studio 中的库编译时获取链接器错误?

转载 作者:行者123 更新时间:2023-11-30 03:25:51 25 4
gpt4 key购买 nike

考虑一个名为 Exe 的可执行文件,它依赖于一个名为 Lib1 的静态库,而 Lib1 依赖于另一个名为 的静态库Lib2,所以:

Exe -> Lib1 -> Lib2  (where '->' marks dependency)

假设我从 Lib1 的附加库包含中删除了 Lib2。根据我的经验,Lib1 仍会编译,但是当我尝试编译 Exe(链接到 Lib1)时,链接器错误将发生说明 Lib1 中缺少 Lib2 符号。

有没有一种方法可以在编译 Lib1 时“检测”未解析的符号,而无需诉诸编译 Exe 来获得 Lib1 中未解析符号的通知?如果不是,为什么?

最佳答案

假设你在谈论静态库,那么就没有办法做到这一点。静态库不相互链接。链接器依次在您在链接器命令行上列出的所有静态库中查找在可执行文件中找不到的符号。如果它在静态库中找到未知符号,它会在其他静态库中查找,但该过程是由您链接的可执行文件(或 DLL)驱动的。

关于c++ - 如何在 Visual Studio 中的库编译时获取链接器错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48737255/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com