用Eclipse和GDB构建ARM交叉编译和在线调试环境

环境介绍

  • 主机:ubuntu 16.04 虚拟机
  • 板卡:hisi3559A

安装Eclipse

安装jdk

sudo add-apt-repository ppa:openjdk-r/ppa  
sudo apt-get update  
sudo apt-get install openjdk-8-jdk 

判断JDK是否安装成功:

java
javac

安装eclipse、eclipse-cdt

sudo apt-get install eclipse
sudo apt-get install eclipse-cdt

创建交叉应用工程

在 Eclipse 主界面点击菜单 File > New > C/C++ Project,在弹出的“C/C++ Project”对话框中,输入项目名称。选择一个项目类型(如Executable/Empty Project),在 Toolchains 中一定要选** Cross GCC**,这是CDT对交叉环境的支持,提供了额外的功能,以方便嵌入式应用程序的开发。
点击下一步,来到“Select Configurations”页面,我们采用默认,直接下一步,来到“Cross GCC Command”的设置。这里我们可以填写交叉编译工具链的交缀和路径,如:

aarch64-himix100-linux-
/opt/hisi-linux/x86-arm/aarch64-himix100-linux/bin

上面的配置应该根据自己的实际情况进行。
最后点击完成,一个交叉项目就创建好了。关于交叉编译前缀和路径的设置,在项目创建后,可以在项目的属性中改变它。

测试

#include <iostream>
using namespace std;

int main(int argc, char ** argv)
{
    cout<<"This is a message !\n";
    return 0;
}

点击构建,对它进行编译。编译后,我们可以在左侧的“Project Explorer”中,项目目录下的Binaries中看到编译出来的程序。把它拷贝到目标开发板上,运行,结果正确。

搭建远程调试环境

编译gdb 和 gdbserver

首选需要编译gdb 和 gdbserver。可以参考:

开发板端准备

将编译好的文件和gdbserver拷贝到开发板上,执行:
./gdbserver 192.168.199.101:1234 filename
注意,192.168.199.101是主机的ip,filename 是可执行文件的名称。

Eclipse设置

在Eclipse中选择一个项目,点击菜单 Run > Debug Configurations,在左侧的Dubug类型中找到“C/C++ Remote Application”,右击点“New”,创建一个远程调试配置,如下图:



之后就可以进行调试了。

猜你喜欢

转载自www.cnblogs.com/chay/p/11605960.html
今日推荐