检测 .lib 是否针对调试 MSVCRT 生成
Detect if a .lib was built against debug MSVCRT
题主说 - 有没有可靠的方法来检测 .lib 静态库(如果可能的话,还有动态库)是否针对 MSVCRT 的调试版本构建? 例如,是否有任何导入符号可用于检测这一点? 基本上,我有一个使用大量依赖项静态库的应用程序,其中至少有一个需要调试msvcrt,因为生成的可执行文件需要两个版本的运行时。
对于dll,我们可以使用的依赖于Dependency Walker,如果dll依赖于MSVCRxxD.DLL它与调试运行时链接。有关更多信息,请参见使用运行时库。
如果你有cygwin,你可以运行例如
字符串 xxx.lib | grep MSVCRT
或
字符串 xxx.dll | grep MSVCRT
并查看是否显示 D 版本
相关文章:
- 当回溯以零开始时,如何调试崩溃
- 在linux上调试巨大的C++项目
- 为什么使用__LINE_的代码在发布模式下在MSVC下编译,而不是在调试模式下
- 如何针对特定情况调试和修复此双自由内存损坏问题
- 正在VS调试器中监视映射条目
- 使用调试/崩溃报告将应用程序部署到客户端
- VC++本机单元测试,找不到调试符号
- 如何在C++生成器中禁用"使用调试.dcus"
- 使用vscode调试时,GDB意外退出
- 即使使用调试编译标志,表达式也是"optimized out"
- 调试 CUDA MMU 故障
- 小字符串优化(调试与发布模式)
- 调试和自由执行中的信号处理
- 调试编译的服务器在数据库打开时崩溃
- Visual Studio 调试优化如何工作?
- 如何配置Visual Studio Code以使用cygwin,cmake和gcc进行调试
- 从 exe 文件 (Visual Studio ) 启动时调试断言失败
- 如何在大型c++项目的可视化代码中设置调试
- Qt 调试显示行号
- 检测 .lib 是否针对调试 MSVCRT 生成