【问题标题】:c++: How to debug a C++ application compiled using the "Microsoft Visual C++" toolchain in eclipse?c++:如何在 Eclipse 中调试使用“Microsoft Visual C++”工具链编译的 C++ 应用程序?
【发布时间】:2012-02-07 16:05:15
【问题描述】:

我已经安装了 Eclipse CDT 和 CDT Visual C++ Support(来自 Yoxos Marketplace)。

这让我可以编译和运行一个 C++ 应用程序,但是我无法调试它。

所以,我已经使用 mingw 发行版安装了 gdb windows 二进制文件。现在,当我尝试调试时,控制台中显示以下消息 - 未加载符号表。使用“文件”命令。

我未经证实的猜测是 gdb 无法调试由 Visual C++ 编译器生成的二进制文件。

我的问题是——如何在使用 Visual C++ 工具链构建的 Eclipse 中调试 C++ 代码?

我的环境:

  • Windows 7 64 位
  • Eclipse Indigo(目前最新版本)
  • Visual Studio 2010,因此是 Visual C++ 版本 10
  • GNU gdb (GDB) 7.3.1
  • 不知道如何获取CDT的版本,但是我有这个jar - org.eclipse.cdt_8.0.0.201109151620.jar,所以我猜版本是8.0

谢谢。

附言

迁移到 MinGW g++ 编译器超出了此问题的范围,因此请不要将其作为答案。

【问题讨论】:

  • 符号不存储在可执行文件中,而是存储在单独的数据库中,可能是未记录的格式。
  • 它是 PDB 文件 - 为 Visual C++ 开发人员所熟知。

标签: c++ eclipse


【解决方案1】:

请关注https://bugs.eclipse.org/bugs/show_bug.cgi?id=162108

总结: 截至此错误中的最后一条评论(Doug Schaefer 2012-03-13 10:49:27 EDT),似乎有计划整合它,但它尚未工作。

【讨论】:

    【解决方案2】:

    据我所知,您无法使用 gdb 调试 Visual C++ 应用程序,只有 CDT 插件支持。

    Visual C++ 调试器工具链称为 CDB,您必须搜索可以使用它的工具。确保 Visual C++ IDE(甚至来自 Express Edition)可用于调试在 Eclipse+CDT 下编译的应用程序。我认为 CodeBlocks IDE 的一些夜间构建也可以与 CDB 合作。

    【讨论】:

    • 我正在寻找调试 Eclipse 中的代码。那里有 CDB 集成吗?从浏览网页我得出的结论是没有这样的事情,但也许你的来源更好。
    • 正如我提到的 CDT 不支持和 Visual C++ 兼容的调试器。它只支持 gdb。您必须使用 Visual C++ IDE 或 WinDbg(来自 Microsoft 调试工具)或 Codeblocks 来调试由 MS 工具链编译的应用程序。在 Eclipse 中没有办法做到这一点。
    • -1 表示不连贯且具有误导性的答案; CDT 不是唯一支持 gdb 的工具。反之亦然。
    猜你喜欢
    • 2017-12-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-12-04
    • 1970-01-01
    • 1970-01-01
    • 2017-05-15
    • 1970-01-01
    相关资源
    最近更新 更多