九鼎创展论坛

标题: XBOOT集成开发环境入门指南 [打印本页]

作者: jjj    时间: 2011-11-15 09:22
标题: XBOOT集成开发环境入门指南
本帖最后由 jjj 于 2011-11-15 12:02 编辑

XBOOT集成开发环境之Eclipse

Eclipse集成开发环境是一个开源的IDE平台,其以强大的可扩展性而著称,传统的IDE公司都已转向Eclipse平台,在此平台上开发自家插件,然后包装销售,典型的有是ARM公司的推出的RVDS开发平台。

XBOOT官方网站提供已集成好的EclipseIDE,其包含JRE运行环境,Sourcery的arm-none-eabi编译器,Git插件,Windows版还提供make、mkdir、rm等基本工具。


Eclipse支持跨平台特性,能够在Windows、Linux、Mac等平台上运行。


备注:此教程的完整PDF版可以点此链接下载:XBOOT集成开发环境入门指南.pdf

作者: jjj    时间: 2011-11-15 09:35
标题: 安装Eclipse集成开发环境
本帖最后由 jjj 于 2011-11-15 10:40 编辑

下载后直接解压,路径中不要带有空格符号,运行eclipse.bat脚本即可启动Eclipse集成开发环境。

下载后直接解压至任意目录,运行eclipse.sh脚本即可启动Eclipse集成开发环境

备注:以下演示以Windows平台为例,Linux平台与此类似,不再赘叙。               






作者: jjj    时间: 2011-11-15 09:55
标题: 启动Eclipse集成开发环境
本帖最后由 jjj 于 2011-11-15 10:41 编辑

打开Eclipse For ARM集成开发环境,选择工作空间,这里选择c:\workspace


点击OK,第一次启动会出现欢迎界面,可直接关闭进入主界面







作者: jjj    时间: 2011-11-15 10:53
标题: 导入xboot源码
本帖最后由 jjj 于 2011-11-15 10:54 编辑

选择File → Import, 导入Git源到当前工作空间



点击Next后,出现选择Git源界面


点击Clone按钮后,填写xboot的URI地址,如下图所示


点击Next,要求选择Clone哪些分支,这里我们都选上,也可仅选择master分支


点击下一步,Initial Branch选择master分支


点击Finish,则开始Clone远程Git源,请耐心等待


完成后,弹出如下界面


直接Next,开始导入工程



Finish后,则完成xboot工程的导入步骤,见下图



作者: jjj    时间: 2011-11-15 11:14
标题: 编译xboot源码
本帖最后由 jjj 于 2011-11-15 11:15 编辑

点击Porject菜单下的Build All,会自动编译,观察Console窗口,直至编译完成。



此时,在output目录下会生成xboot.bin等目标文件


作者: jjj    时间: 2011-11-15 11:19
标题: 在模拟器中运行xboot
本帖最后由 jjj 于 2011-11-15 11:19 编辑

启动模拟器,双击tools\qemu-system-arm\windows目录下的realview-run.bat脚本即可。

模拟器运行效果截图











作者: jjj    时间: 2011-11-15 11:25
标题: 调试xboot
本帖最后由 jjj 于 2011-11-15 11:25 编辑

配置调试器,选择Run → Debug Configurations, 出现界面后双击GDB Hardware Debugging,如下图:


点选Debugger标签,设置GDB Command及Remote Target


运行realview-debug.bat以启动GDB Server


设置断点,可以直接双击源码左侧,这里我们设置了xboot_main函数的断点


运行GDB调试器,观察Console窗口输出


正常连接后,会出现如下调试界面,断点在_start处


点击如下工具栏,可以运行,停止,单步,跳过,跳出等基本操作


点击运行,单步等命令按钮,就可以调试了,如下图所示



作者: jjj    时间: 2011-11-15 11:35
标题: 编译xboot至其他平台
本帖最后由 jjj 于 2011-11-15 11:36 编辑

在工程源码目录下的Makefile中,有个TARGET变量,用于控制编译的目标平台,可以在make时传递TARGET参数或者直接修改。

例如:
  1. make TARGET=arm-smdkv210 CROSS=/path/to/arm-none-eabi-
复制代码



作者: jobszheng    时间: 2011-12-27 19:48
这个必须顶啊!
作者: 鱼煮水    时间: 2012-4-13 21:55
很好的教程 先看看
作者: ARM    时间: 2012-4-17 21:41
顶!
作者: 鱼煮水    时间: 2012-4-22 18:30
再次来顶
作者: 注册真烦    时间: 2012-6-21 08:47
讲得挺详细的。
作者: kangear    时间: 2012-10-17 16:25
学习了,
作者: gbk18030    时间: 2012-11-13 20:47
jjj 发表于 2011-11-15 11:14
点击Porject菜单下的Build All,会自动编译,观察Console窗口,直至编译完成。

I got two errors:

1. make: ***[all] Error 2
2. make[1]:***[.obj/arch/arm/lib/gcc/__aeabi_idivmod.o]Error 2

What would be the problem(s)?

作者: andret    时间: 2012-12-1 20:05
Hi,

Compiling under Linux, I got this error:

[LD] linking ../output/xboot.elf
collect2: ld terminated with signal 11 [Segmentation fault], core dumped
/opt/toolchains/arm-2009q3/bin/../lib/gcc/arm-none-linux-gnueabi/4.4.1/../../../../arm-none-linux-gnueabi/bin/ld: BFD (Sourcery G++ Lite 2009q3-67) 2.19.51.20090709 assertion fail /scratch/julian/2009q3-respin-linux-lite/obj/binutils-src-2009q3-67-arm-none-linux-gnueabi-i686-pc-linux-gnu/bfd/elf32-arm.c:12787
make[1]: *** [../output/xboot.elf] Error 1
make[1]: Leaving directory `/root/x/xboot-master/src'
make: *** [all] Error 2


Any ideas?
作者: highlightbruce    时间: 2013-1-16 10:45
图文并茂,不错!
作者: 兑尊    时间: 2013-2-24 00:07
gbk18030 发表于 2012-11-13 20:47
I got two errors:

1. make: ***[all] Error 2

那是你没有按照说明点击eclipse.bat,而是打开了eclipse.exe而,要知道eclipse.bat里面包含了设定路径
作者: gbk18030    时间: 2013-2-26 10:24
兑尊 发表于 2013-2-24 00:07
那是你没有按照说明点击eclipse.bat,而是打开了eclipse.exe而,要知道eclipse.bat里面包含了设定路径 ...

谢谢大大。按步骤重新再作,可以编译了。
作者: 茫天靖剑    时间: 2013-6-6 11:20
精彩,,,,
作者: wuyan    时间: 2014-2-12 17:13
这个太牛了,xboot功能再增加一些就更好了




欢迎光临 九鼎创展论坛 (http://bbs.9tripod.com/) Powered by Discuz! X3.2