【问题标题】:Debug C/C++ application on linux through Eclipse通过 Eclipse 在 linux 上调试 C/C++ 应用程序
【发布时间】:2020-03-02 04:34:23
【问题描述】:

我正在做一个 C/C++ 逆向工程项目,需要一些调试才能准确理解 C 中的逻辑。所有与该主题相关的帖子都相当老了,最新的在 2015 年。现在是 2019 年底,很多事情都变了。所以我暂时提出解决方案。

【问题讨论】:

  • 我不确定这里是否适合。 Stack Overflow 不是在线笔记应用。您是否公开发布了应该发给团队的内容?
  • 我确定是这样。有人已经投票了。

标签: c++ c linux eclipse debugging


【解决方案1】:

我尝试的第一件事是从 windows eclipse 进行远程调试。 C/C++ 代码使用命令“gdbserver localhost:2345 cprocess”在 linux 机器上运行。我面临的障碍是windows eclipse端的gdbclient(来自mingW安装)是8.2,而服务器端gdbserver是8.3。尝试修复时出现太多问题。

我尝试的下一件事是从 linux 启动 eclipse,它工作正常。步骤如下:

  1. 下载软件包并安装在 linux 上。 https://www.eclipse.org/downloads/packages/file/39888。 解压:“tar -xvzf eclipse-linuxtools-helios-SR2-incubation-linux-gtk-x86_64.tar.gz”。孵化 package 里面有很多依赖。其他包需要依赖才能解决。

  2. 安装 x11 相关和 x-forwarding。 Eclipse 在 Linux 上运行。要弹出 UI,它需要 windows 组件。该组件监听从 linux 转发的数据并显示。我参考了这篇文章 https://www.osradar.com/configure-x11-forwarding-in-centos-rhel-6-7-8-and-fedora-28-29/

    (a) 在https://sourceforge.net/projects/xming/安装xming
    (b) 在 linux 机器上安装 xorg-x11-server-Xorg xorg-x11-xauth xorg-x11-apps。
    要找到要安装的确切版本,请执行“yum list | grep -i xorg”。然后“sudo yum install the-right-version-components”
    (c) 打开 putty 并选中 X11 选项。

    (d) 在您的 linux 机器上键入“eclipse”,Eclipse 应该会在您的 Windows 上启动。

PS,java6中的eclipse孵化包,我找不到可以轻松安装在linux上的java8版本。所以你可能需要安装java6并设置env。

    export JAVA_HOME=/usr/java/jdk1.6.0_45  
    export PATH=$JAVA_HOME/bin:$PATH 
  1. 在 linux 中启动您的应用程序,使用 eclipse c/c++“附加到应用程序”。

【讨论】:

    猜你喜欢
    • 2010-09-19
    • 2017-09-12
    • 2018-02-15
    • 2012-06-10
    • 2010-09-13
    • 2012-02-09
    • 1970-01-01
    • 2014-07-25
    • 2013-08-20
    相关资源
    最近更新 更多