linux下eclipse交叉开发环境搭建

2019-07-13 05:23发布

转自:http://blog.chinaunix.net/uid-25424552-id-3415988.html

linux下eclipse交叉开发环境搭建 

申明:   1.本文所讨论的硬件平台基于海思3716M芯片(ARM内核)的机顶盒;   2.宿主机信息:Linux version 2.6.18-92.el5 (gcc version 4.1.2 20071124 (Red Hat 4.1.2-41))   3.交叉编译工具:arm-hisiv200-linux   一、软件安装 1、  安装eclipse    eclipse本身只是一个框架平台,最初主要用于java语言的开发。但是众多插件的支持使得eclipse同样可以用来开发其他的语言,如c/c++c#perlcobol等等。cdt(c/c++ development toolkit)就是支持c/c++开发的插件。由于eclipse平台用java实现,所以运行时需要jre(java runtime environment)的支持。因此整个eclipse的安装过程分为三个步骤: 1)、安装JDK A、判断当前环境下是否已经安装了jdk# java -version -bash: java: command not found   B、如出现以上提示则说明当前系统还没安装jdk,首先从sun的网站上(http://java.sun.com/javase/downloads/index.jsp)下载安装包jdk-6u7-linux-i586.bin,然后如下进行安装: # mkdir -p /usr/local/java //将安装包拷贝到该目录下   #cd /usr/local/java       
       # ./jdk-6u7-linux-i586.bin  

安装完成后,再进行确认: # java -version java version "1.6.0_21" Java(TM) SE Runtime Environment (build 1.6.0_21-b06) Java HotSpot(TM) Client VM (build 17.0-b16, mixed mode, sharing)   至此jdk安装完成。   2)、下载安装eclipseeclipse网站上(http://www.eclipse.org/)下载安装包eclipse-SDK-3.4-linux-gtk.tar.gz,然后执行以下命令: # mkdir -p /usr/local/eclipse //将下载安装包拷贝到该目录下 # cd /usr/local/eclipse # tar zxvf eclipse-SDK-3.4-linux-gtk.tar.gz   解压完毕后,会在当前目录下出现一个名为eclipse的目录,进行以下命令:         # cd usr/local/eclipse/eclipse         # ./eclipse     若成功执行,将出现如下界面: 至此eclipse安装完成。   3)、安装下载CDT 步骤2中启动的eclipse是不支持c程序开发的,因此必须将其关闭,安装cdt插件。 从eclipse CDT网站上(http://www.eclipse.org/cdt/)下载cdt-master-5.0.0.zip,安装: # mkdir p usr/local/eclipse/cdt //将安装包拷贝到该目录下 # cd usr/local/eclipse/cdt # unzip cdt-master-5.0.0.zip
# cp -r plugins/*  
usr/local/eclipse/eclipse/plugins/
# cp -r features/*  usr/local/eclipse/eclipse/features/   再次启动eclipse,便可进行c程序开发调试了。   2、  安装gdbgdbserver 想要通过eclipse交叉调试我们的机顶盒,还必须gdbgdbserver这两个工具;其实eclipse只是对gdb的进行了一层图形化的封装,让用户更方便与调试操作。注意以下安装过程,假设你的linux平台上已经正确的安装了交叉编译链,并且已经正确的设置了环境变量;以下的安装过程是针对hisiv200工具链进行说明的,其他工具链只需修改target和host参数。 1)、安装包下载GNU网站上(http://www.gnu.org/software/gdb/download/)下载gdb-7.3a.tar.bz2。执行以下操作: # mkdir p usr/local/gdb  //将安装包拷贝到该目录下 # tar jxvf gdb-7.3a.tar.bz2 # ls gdb-7.3 gdb-7.3a.tar.bz2   2)、编译安装gdb gdb是运行在宿主机(x86平台)上的,但是它必须保证能跟机顶盒(海思arm平台)上的gdbserver进行正常通信,所以编译前要进行如下配置: # mkdir p /usr/local/hisi-arm-gdb # cd usr/local/gdb/gdb-7.3 # ./configure --target=arm-hisiv200-linux --prefix=/usr/local/hisi-arm-gdb  ……(配置过程) #make ……(编译过程) #make install   安装完成后,在/usr/local/hisi-arm-gdb便可看到三个目录: bin  lib  share。其中bin目录里面存放有我们需要的gdb工具,arm-hisiv200-linux-gdb。 至此gdb编译安装完成。   2)、编译安装gdbserver gdbserver是运行在机顶盒上的,所以必须用与编译机顶盒程序配套的交叉编译链对其进行配置编译,例如对于用hisiv200编译链编译的程序,一般用以下语句配置编译gdbserber# cd usr/local/gdb/gdb-7.3/gdb/gdbserver/ # ./configure --host=arm-hisiv200-linux # make   编译完成后,在该目录下便看到我们所需要的gdbserver工具。   二、eclipse工程构建 1、启动eclipse:     2、新建工程:     3、选择C Project 弹出如下窗口, project types选择Makefile project, Use default location不选,手动指定工程目录,project name栏键入工程名,点击finish完成:      4、   创建编译目标, Make Tagert选中app目录右键单击,弹出列表选择Add Make Target      5、   Create a new Make Target框的Target Name栏和Make Target栏都输入all,单击create“     6、   app目录下出现all目标: 7、   编译,双击app目录下的all目标,便可进行编译: 三、交叉调试 1、配置eclipse   选择run选项中的“Debug Configurantions”选项,弹出 Debug Configurantions框。     双击 Debug Configurantions框中的C/C++ Local Application ,右边栏main选项中,按如下所示键入信息:   右边栏,选择“debugger“选项,键入如下信息,Debugger 选择 gdbserver Debugger ,GDB debuger 选择在步骤一中编译的gdb,即arm-hisiv200-linux-gdb:   选择Debugger Options中的Connection选项, 输入以下信息,点击Apply,单击close,完成配置。    2、在机顶盒中运行gdbserver 将步骤一中编译的gdbserver,拷贝至机顶盒运用程序所在的目录下(假设是/mnt目录)然后执行以下命令:   3eclipse中运行debugger 选择run选项中的“Debug Configurantions选项弹出 Debug Configurantions选择demo单击Debug    eclipse进入debug模式: 至此,在linux下基于eclipse的整个远程交叉调试环境搭建完毕。