我有一个运行Linux Ubuntu的Freescale(i.MX53)的ARM Coretex-A8开发板。它可以正常启动,我可以使用鼠标/键盘/终端访问系统。
首先,我想让一个应用程序在主机OS内的板上运行,就像在PC上运行应用程序一样。
我的问题是,使用基于cc的YAGARTO之类的工具链来编译我的测试程序,因为我没有定义任何启动脚本,所以最终在链接方面遇到麻烦。
我发现了许多有关构建“裸机”配置的信息(包括编译内核以及创建加载和链接脚本),但是对于使应用程序在主机OS上运行没有任何帮助。
我的开发环境在Windows 7上运行。我也可以选择在Linux X86上运行,但是我怀疑这对我制作ARM应用程序会有帮助。
对于ARM-Linux应用程序开发,首选选择是其中装有ARM工具链的Linux Host(x86)计算机。在Ubuntu桌面计算机上,您可以使用以下命令来安装ARM工具链:
apt-get install gcc-arm-linux-gnueabi
安装工具链后,您可以使用以下命令进行交叉编译:
gcc-arm-linux-gnueabi-gcc -o hello hello.c
使用此工具链,您可以使用标准C库交叉编译C程序,而无需启动代码。可以在您的Host Linux(x86)平台上交叉编译应用程序,并在Target Linux(ARM)平台上运行。
Windows版本的ARM-Linux工具链也可用。你可以从这里得到。
Linaro Developers Wiki-一个致力于在ARM上改进Linux的开放组织,将为您的工作提供很好的参考。