【发布时间】:2014-05-31 06:29:38
【问题描述】:
我目前正在 64 位 Linux 机器上编写一个应用程序(非常简单和基本的 C 语言 hello world 程序)。我已经使用 Linero 的 ARM 嵌入式 gcc 工具链按应用程序编译,以将应用程序交叉编译到我的板上。有关信息,我正在使用带有 ATMEL AT91SAM9G20 处理器的 FOX G20 V 板。
所以,我使用arm-none-eabi-gcc 编译了我的应用程序,同时添加了一些允许我使用标准 C 函数(例如 printf 等)的选项。这编译成功,我能够获得二进制文件,准备加载到我的板上。
因此,下一步是编译和构建 U-Boot,以便能够将我的应用程序加载到我的板上。我按照编译和构建使用
使 ARCH=arm CROSS_COMPILE=${CC} distclean
使 ARCH=arm CROSS_COMPILE=${CC} at91sam9g20ek_mmc_config
使 ARCH=arm CROSS_COMPILE=${CC}
通过向编译器指定arm-none-eabi-gcc 路径的确切位置。
这样就编译成功了。
现在我已经有了我的应用程序二进制文件,并且我的 U-Boot 已构建并准备好加载,我如何将我的应用程序实际加载到板上?我曾尝试在线学习教程,但相当不成功。理想情况下,我想将我的应用程序加载到我开发板的 SD 卡上。任何建议将不胜感激。
【问题讨论】:
-
return不是函数。 -
好的,好的,谢谢。我的意思是 printf 函数。
-
让我为你解决这个问题! ;-)
-
谢谢你:)。您对这个问题有任何可能的建议/帮助吗?
标签: c linux gcc cross-compiling processor