helloworld演示程序
表 1
开发板型号
| 是否支持本实验
|
TL437x-EVM
| 支持
|
TL437x-EasyEVM
| 支持
|
TL437x-IDK
| 支持
|
TL437xF-EVM
| 支持
|
本文档通过最简单的helloworld应用程序开发,演示Linux应用开发过程中的编写、交叉编译、在目标板运行应用程序的步骤。
编写helloworld源码先在Ubuntu下建立helloword目录,用于存放helloworld.c源码文件
Host#mkdir -p /home/tronlong/AM437x/app/helloworld
Host#cd /home/tronlong/AM437x/app/helloworld
图 1
使用gedit工具新建helloworld.c文件,并编辑程序源码。新建helloworld.c文件的命令如下:
Host#gedit helloworld.c
在helloworld.c中输入以下代码:
#include
int main(void){
printf("Hello World!nwww.tronlong.comn");
}
图 2
和Windows下的文本编辑器一样按"Ctrl+S"就可以保存编辑的内容了,然后点击左上角的红叉按钮退出。
交叉编译helloworld程序在交叉编译之前,请确保对应平台Linux Processor-SDK开发包自带的交叉编译工具链已生效,然后执行以下命令交叉编译程序:
Host#arm-linux-gnueabihf-gcc helloworld.c -o helloworld
arm-linux-gnueabihf-gcc为使用的交叉编译工具链,helloworld.c为应用程序源文件,"-o helloworld"代表交叉编译后输出的程序镜像名为"helloworld",此名字可以是任意的。
图 3
可以看到在当前目录下有helloworld镜像文件产生,说明交叉编译成功。也可以通过file命令查看其属性。
Host#file helloworld
图 4
从提示中可以看到,helloworld镜像文件是一个32位的小端ARM平台的程序,是可以在ARM平台直接运行的。
在开发板中运行helloworld程序将helloworld镜像文件拷贝开发板文件系统任意路径,然后在可执行镜像文件的所在路径执行以下命令运行helloworld程序:
Target# ./helloworld
运行程序后系统会打印程序信息,提示如下图: