【问题标题】:Eclipse: I can run a program but I couldn't debug itEclipse:我可以运行一个程序,但我无法调试它
【发布时间】:2019-03-30 21:12:51
【问题描述】:

我已经从以下位置下载了著名的 linuxptp 源代码(C 语言): git clone git://git.code.sf.net/p/linuxptp/code linuxptp

这是一个 makeFile 项目,我可以从命令行成功运行,但是当我尝试将其导入 Eclipse 时出现问题: 文件 > 新建 > 使用现有代码的 Makefile 项目

我可以成功构建并运行它,但我无法调试或强制它在断点处停止。我不断收到消息(“main() at 0x401eb5”没有可用的来源)。

我尝试从官方网站重新安装 Eclipse IDE for C/C++ Developers 但没有成功。

我认为提及以下内容很有用: - 我正在使用的源代码包含具有 main() 函数的不同文件 - Eclipse 调试器在 Eclipse 上从头开始创建的项目上成功运行

有什么想法吗? 谢谢。

【问题讨论】:

    标签: c linux eclipse makefile


    【解决方案1】:

    您应该为项目中的不同可执行文件创建一些调试启动配置。

    同时确保 Makefiles 在编译时包含 -g 选项以生成所需的调试信息。

    编辑:

    将此行添加到您的 Makefile:

    CFLAGS += -g
    CXXFLAGS += -g
    

    【讨论】:

    • 我已经为我需要调试/运行的可执行文件创建了一个调试配置。但是我不清楚Makefile中的-g是什么意思。这是 Makefile 的相关部分:KBUILD_OUTPUT = ||调试 = || CC = $(CROSS_COMPILE)gcc || VER = -DVER=$(版本) || CFLAGS = -Wall $(VER) $(incdefs) $(DEBUG) $(EXTRA_CFLAGS) ...我应该将值 -g 分配给 DEBUG 变量吗? (注意:|| 表示 Makefile 中的换行符,因为我无法在此注释中执行换行符)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-03-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多