问题现象
拿到同学交付的Makefile,执行make的时候提示报错如下,里面的xxx是敏感信息,下同,跟本问题没有太大关系,因此略去。
Compiling xxx.s
Compiling xxx.s
make: ppc-freevle-eabi-gcc: No such file or directory
make: *** [xxx.mk:141: xxx.o] Error 127
make: *** Waiting for unfinished jobs....
make: ppc-freevle-eabi-gcc: No such file or directory
make: *** [xxx.mk:141: xxx.o] Error 127
问题分析
提示里面有两个信息:
1.Makefile里面141行执行有问题
2.找不到ppc-freevle-eabi-gcc这个文件
Makefile文件当中,141行内容如下:
export PATH := C:\xxx\$(xxx)${PATH}
这句话的意思是,后面用到的编译工具都在这个路径下面找,确认了ppc-freevle-eabi-gcc这个文件在这个路径下面。
这种写法是LInux系统特有的,Windows系统执行不了,需要换成Windows的写法。
问题解决
把上面141行的内容换成下面的内容就行,重新make就能正常执行。
ifeq ($(OS),Windows_NT)
$(call SET, PATH=xxx\xxx$(PATH))
endif