Linux 下make

来源:百度知道 编辑:UC知道 时间:2024/06/07 04:16:10
我在linux下编缉好Makefile,然后执行#make,出现如下错误:

armv4l-unknown-linux-gcc -c -o hello.o hell.c

make:armv4l-unknown-linux-gcc:Comand not found

make:*** [hello.o] Error 127

请高手指点一下哪里出错了?

经检查,armv4l-unknown-linux-gcc 在/opt/host/armv4l/bin/路径下,注:Makefile文件为:

CC= armv4l-unknown-linux-gcc
EXEC = hello
OBJS = hello.o
CFLAGS +=
LDFLAGS+= –static
all: $(EXEC)
$(EXEC): $(OBJS)
$(CC) $(LDFLAGS) -o $@ $(OBJS)
clean:
-rm -f $(EXEC) *.elf *.gdb *.o

hello.c文件可以编译执行,但make就出现上面的错误!!!!!

make:armv4l-unknown-linux-gcc:Comand not found
Make 没有找到 armv4l-unknown-linux-gcc 这个命令。

你既然说 hello.c 可以编译执行,那么肯定是用的本地 gcc 编译&执行。这个和你要进行的交叉编译不是同一套编译工具链。

如果你确定安装了 arm 交叉编译工具链。
试试:
export PATH=/path/to/arm-corss-tool/bin:$PATH
注意一般交叉编译工具并不只有一个 bin 目录,你最好全都设置上,: (冒号)是每个目录之间的分割符。注意编译器如果是现成的二进制程序,不要修改位置,这个工具让你放到什么地方,你就放到什么地方。

可能是 /opt/host/armv4l/bin/ 路径环境变量中 没有注册


CC= armv4l-unknown-linux-gcc
改为
CC= /opt/host/armv4l/bin/armv4l-unknown-linux-gcc
试试看

安装了又找不到肯定是环境变量没有添加了
在/etc/profile这个文件:
pathmunge /sbin
pathmunge /usr/sbin
pathmunge /usr/local/sbin
在这后面添加一行
pathmunge /opt/host/armv4l/bin

或者文件最后加一行
export PATH=$PATH:/opt/host/armv4l/bin

然后执行一下source /etc/profile就OK了