【发布时间】:2014-12-14 15:59:39
【问题描述】:
我正在尝试编译 3 个项目:
- 静态库 (.lib)
- 使用静态库的 .lib 的动态库 (.dll)。
- 使用动态库的 .dll 的应用程序 (.exe)
但是,当尝试编译 .exe 并设置断点时,我收到警告“当前不会命中断点。没有为此文档加载任何符号。”
好吧,我知道 Visual Studio 以某种方式缺少 .pdb 文件。但是,我不明白为什么 Visual Studio 找不到它。
- 正在生成静态库的 .pdb 文件,与 .lib 位于同一文件夹中。
- 动态库引用静态库的 .lib 和 .pdb 所在的文件夹。在为动态库创建 .dll 的同一文件夹中创建一个 .pdb 文件。
- 应用在编译前将动态库的.dll和.pdb复制到生成.exe的文件夹中。
不过,Visual Studio 仍然抱怨它没有加载任何符号。在输出控制台中,它还告诉我它已经加载了 .exe 和 .dll 的符号,但没有加载 .lib 的符号。我是不是有点想念?
【问题讨论】:
-
为什么标题标记为C++,然后将问题标记为C?
-
这是一个 C++ 项目。
-
这个问题不应该同时适用于 C 和 C++ 吗?
-
您是否在启用调试的情况下编译和链接?
-
我在 Visual Studio 的解决方案配置中切换到“调试”,所以应该启用它。它还生成了 .pdb 文件。
标签: c++ visual-c++