|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
7 _; G" f% q' e2 L+ t3 p% {经过前面几篇文章的准备工作,我们初步熟悉了LarkBoard。这篇文章主要介绍ARM开发环境的搭建,为后面软件工程的开发提供参考。4 d% h: a1 I l \% |3 I0 ~
ARM开发通常包括:基于嵌入式操作系统的应用开发,嵌入式操作系统驱动开发和硬件开发。这里关注的是应用开发。后面驱动开发会结合HPS外设、FPGA等设备进行介绍。
. M3 Y+ W% d1 L8 }8 M9 A/ X本文使用开发环境为Fedora 17 32bit操作系统。交叉编译工具链是必不可少的。对于Lark开发板我们需要从https://launchpad.net/linaro-too ... 21123_linux.tar.bz2下载,大约60多MB。下载后直接解压:3 x& G3 N' }; M4 E+ n8 @# Z @) D
tar xjf gcc-linaro-arm-linux-gnueabihf-4.7-2012.11-20121123_linux.tar.bz2& D ~" A c q; q
我的机器上解压目录为/home/Eating/Documents/SoC/gcc-linaro-arm-linux-gnueabihf-4.7-2012.11-20121123_linux,为了便于书写命令,我们导出一个环境变量:9 M0 P. v' Q; @( |, U
export CROSS_COMPILE= /home/Eating/Documents/SoC/gcc-linaro-arm-linux-gnueabihf-4.7-2012.11-20121123_linux/bin/arm-linux-gnueabihf-+ |0 D% ]) B* E b; X; [
好了,以后我们编译程序可以直接用这个环境变量。为了让这个环境变量每次开机后自动启用,我们将它写入.bashrc:+ w0 A: J, V: N P; O. k! r' h1 w
echo export CROSS_COMPILE= /home/Eating/Documents/SoC/gcc-linaro-arm-linux-gnueabihf-4.7-2012.11-20121123_linux/bin/arm-linux-gnueabihf- >> ~/.bashrc
! Y4 {" O T5 V9 H, S2 S% P5 l8 w' ]: J, X
; o' e8 F8 _- Q
下面写个Hello world程序测试。用vi编辑一个hello.c文件,写入如下内容:" c* L& N/ `3 v! _, l4 @
# l+ m# u, [1 ^5 }Fedora 17界面很现代。
+ H5 M& S! U1 D1 T6 P+ f0 F写完后保存,在命令行中输入如下命令进行编译:
& ?- p2 g% S1 x$ o0 m* `9 N) p${CROSS_COMPILE}gcc hello.c -o apps6 E% l0 m. ?; }- w3 j9 d$ W. B
生成了目标文件apps。将它拷贝到我们的板子上(我直接放到了TF卡的FAT分区),运行结果如下:: f6 E$ u* n }* c# E
! x% M) b) }& Z% ^7 g可见成功运行了。
( e$ R% t9 r; g0 o D4 J; l) A
N( k. l( N$ L2 C* Q) S' [下一篇将介绍如何编译u-boot和linux kernel。
' N* T2 n$ \2 H+ M' X7 F+ p1 B |
|