使错误为:无法识别的选项'-mcpu = arm1176jzf-s'
Posted
技术标签:
【中文标题】使错误为:无法识别的选项\'-mcpu = arm1176jzf-s\'【英文标题】:make error as: unrecognized option '-mcpu=arm1176jzf-s'使错误为:无法识别的选项'-mcpu = arm1176jzf-s' 【发布时间】:2014-04-24 15:24:28 【问题描述】:我正在尝试编译一些 C 以在友好ARM 上运行几天,但没有任何运气,我认为我很接近但收到此错误:
kevin@kevin-VirtualBox:~/Desktop/makef$ make
arm-none-linux-gnueabi-gcc -c -o obj/main.o main.c -I./
as: unrecognized option '-mcpu=arm1176jzf-s'
make: *** [obj/main.o] Error 1
有谁知道这个错误是什么意思以及如何修复它?
我尝试过的步骤:
1
touch *.*
make clean
make
(error as: unrecognized option '-mcpu=arm1176jzf-s)
2
touch *.*
make clean
make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi-l
(error as: unrecognized option '-mcpu=arm1176jzf-s)
生成文件:
IDIR =./
CC=arm-none-linux-gnueabi-gcc
CFLAGS=-I$(IDIR)
ODIR=obj
LDIR =./
LIBS=-lgd -lrt
_DEPS = main.h Makefile
DEPS = $(patsubst %,$(IDIR)/%,$(_DEPS))
_OBJ = main.o serial.o fb.o menu_main.o timer.o cmdin.o buzzer.o statemachine.o inout.o network.o text_file_input.o text_file_input_oven.o
OBJ = $(patsubst %,$(ODIR)/%,$(_OBJ))
$(ODIR)/%.o: %.c $(DEPS)
$(CC) -c -o $@ $< $(CFLAGS)
main: $(OBJ)
$(CC) -o $@ $^ $(CFLAGS) $(LIBS)
.PHONY: clean
clean:
rm -f $(ODIR)/*.o *~ core $(INCDIR)/*~
【问题讨论】:
你能重新制定一下吗?帖子里没有问题。 您正在调用一个尝试使用自定义工具链arm-none-linux-gnueabi-gcc
编译程序的makefile。这似乎调用了汇编程序,传入-mcpu=arm1176jzf-s
,并且您没有安装完整的工具链。由于您是交叉编译,因此您可能必须自己构建工具链
【参考方案1】:
表示你安装的gcc
版本不理解-mcpu=arm1176jzf-s
选项
您的gcc
旧版本不接受该选项,或者您的gcc
版本已关闭交叉编译支持。
【讨论】:
如何检查 gcc 的交叉编译支持是否关闭。以上是关于使错误为:无法识别的选项'-mcpu = arm1176jzf-s'的主要内容,如果未能解决你的问题,请参考以下文章
R gputools:gcc:错误:无法识别的命令行选项'-Wp'