【发布时间】:2015-03-10 12:12:53
【问题描述】:
我想为裸机 ARM 准备 GNU 工具链,以便与 Geany IDE 一起使用。有一些这样的教程:Building the GNU ARM Toolchain for Bare Metal 但我不明白几个步骤。
首先,使用Linux操作系统的每个人都隐含着gcc、binutils和gdb,那为什么要下载别人呢?其次,所有教程都告诉我用类似的东西配置 gcc:*./configure --target=arm-elf。它甚至有什么作用?它只是强迫我在命令行中使用 arm-elf-gcc 而不是 gcc 调用 gcc 还是改变了我的 gcc 的一些内部选项?
到目前为止,我已经准备好了 makefile,但我仍然不确定编译器选项。我没有更改任何 gcc 配置选项,我用这样的标志调用编译器:
CFLAGS = -Wall -std=c99 -march=armv7-m -mtune=cortex-m0
我可以通过使用适当的参数调用 gcc 来准备工具链,还是需要对 gcc 配置进行一些更改?
【问题讨论】:
-
您是否在编译器中至少尝试了这些选项?它奏效了吗?这是否给你一个关于为什么准备的线索。步骤是必要的吗?
-
我建议你离开并调查“交叉编译”......
-
到目前为止我还没有尝试过,因为我看到的每个教程都包括配置 --target=arm-elf 没有解释它对编译器的实际作用,如果我只是调用 gcc争论甚至是可能的。