【发布时间】:2023-03-28 20:30:02
【问题描述】:
我想为 Stellaris 板编译一个 C 文件。 (皮层 m4) 但是编译器总是抛出以下错误:
Building file: ../main.c
Invoking: Cross GCC Compiler
arm-none-eabi-gcc -DPART_LM4F120H5QR -DARM_MATH_CM4 -DTARGET_IS_BLIZZARD_RA1 -I/home/erbal/src/stellaris -I/usr/lib/gcc/arm-none-eabi/4.5.1/include-fixed -I/usr/lib/gcc/arm-none-eabi/4.5.1/include -I/usr/lib/gcc/x86_64-unknown-linux-gnu/4.8.2/include -O0 -g3 -Wall -c -fmessage-length=0 -mthumb -mcpu=cortex-m4 -mfpu=fpv4-sp-d16 -mfloat-abi=softfp -ffunction-sections -fdata-sections -MMD -MP -MF"main.d" -MT"main.d" -o "main.o" "../main.c"
as: unrecognized option '-mcpu=cortex-m4'
subdir.mk:21: recipe for target 'main.o' failed
make: *** [main.o] Error 1
【问题讨论】:
-
-mcpu : 这个选项不被 gcc 识别。试试 -march 或 -mtune
-
您是否注意到您的makefile 触发器
as(汇编程序)没有前缀arm-none-eabi? -
那我该怎么办? :)
-
-mthumb -mcpu=cortex-m3 -march=armv7-m
-
根据从 4.6 更改 doc gcc 支持 cortex-m4。 gcc.gnu.org/gcc-4.6/changes.html