gpt4 book ai didi

c++ - 如何识别库是 DEBUG 还是 RELEASE 构建?

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:20:27 25 4
gpt4 key购买 nike

我们的项目使用许多静态库来构建应用程序。我们如何确保我们在应用程序的发布版本中使用库的发布版本?

我们在发布应用程序构建中使用调试库时犯了错误。

我正在寻找一种优雅的方式来编写模块,这样我们就可以检查特定库是否已发布或调试,如果不匹配则报告它。我们的应用程序是用 C/C++ 编写的。 (平台 MSVC 和 GCC)

最佳答案

是的。您可以检查文件的 IMAGE_FILE_HEADER 结构的 Characteristics 字段。如果库是发布版本,则位 0x0200 (DEBUG_STRIPPED) 将被设置;在调试版本上,它会很清楚。

您可以在网上的不同位置(例如 here)找到有关 Windows EXE 和 DLL 使用的 PE 格式的技术信息,以了解如何检索该结构。

关于c++ - 如何识别库是 DEBUG 还是 RELEASE 构建?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/847721/

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