失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > arm-linux-gcc找不到命令 ubuntu 下搭建arm-linux-gcc 命令未找到问题

arm-linux-gcc找不到命令 ubuntu 下搭建arm-linux-gcc 命令未找到问题

时间:2020-12-11 03:39:56

相关推荐

arm-linux-gcc找不到命令 ubuntu 下搭建arm-linux-gcc 命令未找到问题

很郁闷,找了近一个下午,老是提示arm-linux-gcc找不到,但是确实是装好了,其实是权限的问题,原帖如下:/s/blog_4670451c0100e1uw.html

ubuntu没有root权限,刚开始用碰到很多麻烦,查了好多资料,终于把arm-linux-gcc: Command not found 的问题解决了。

问题:

sudo tar jxvf arm-linux-gcc.4.3.3.tar.bz2

export PATH=$PATH:/usr/local/arm/2.95.3/bin

#/usr/local/arm/2.95.3/bin此处为编译器所在的位置

使用arm-linux-gcc–v检查交叉编译器安装成功

tar jxvf kernel.tar.bz2

解压之后生成kernel目录

sudo make clean

sudo make menuconfig

sudo make zImage

提示错误:

arm-linux-gcc: Command not found

PATH里有/usr/local/arm/2.95.3/bin,/usr/local/arm/2.95.3/bin/下有arm-linux-gcc文件,但是make的时候,就是找不到arm-linux-gcc

原因:

export PATH=$PATH:/usr/local/arm/2.95.3/bin

是设置当前用户的PATH,而sudo执行make的时候,使用的是超级用户权限,那也就使用了超级用户的PATH(但是这个PATH里,并没有/usr/local/arm/3.4.1/bin)

解决方法:

先打开一个超级用户权限的shell:

sudo –s

在当前shell下,设置环境变量:

export PATH=$PATH:/usr/local/arm/2.95.3/bin

#关闭shell以后就不能使用,此时使用编辑 /etc/profile,在文件末端加上export PATH=$PATH:/usr/local/arm/2.95.3/bin

再进入到kernel目录,make zImage,就可以找到arm-linux-gcc了

2

今天下午,学到了友善mini2440用户手册的 第六章定制Linux 内核及制作文件系统, 在执行命令#make zImage 的时候,老是提示arm-linux-gcc找不到,但是确实是装好了,其实是权限的问题,多亏了参考这篇博文,谢谢原作者:/s/blog_5ddb672b0100e38w.html

(以下内容,本人根据自己学习情况有修改)

我的问题如下:

1,进入linux-2.6.32.2这个目录,从终端输入命令:

cd /opt/FriendlyARM/mini2440/linux-2.6.32.2

2.执行以下命令来使用缺省配置文件 config_w35

sudo cp config_mini2440_w35 .config

(注意:w35 后面有个空格,然后有个“.”开头的 config )

3.然后执行“sudo make menuconfig“,出现配置内核界面,并且这时不用做任何更改,在主菜单里选择退出,这样做是为了生成相应配置的头文件。

4.输入以下命令,开始编译内核:

make zImage (有可能加sudo)

这时出现如下错误:

这时出现如下错误:

# make zImage

make: arm-linux-gcc:命令未找到

scripts/kconfig/conf -s arch/arm/Kconfig

make: arm-linux-gcc:命令未找到

CHKinclude/linux/version.h

make[1]: “include/asm-arm/mach-types.h”是最新的。

CHKinclude/linux/utsrelease.h

SYMLINK include/asm -> include/asm-arm

CCkernel/bounds.s

/bin/sh: arm-linux-gcc: not found

make[1]: *** [kernel/bounds.s] 错误 127

make: *** [prepare0] 错误 2

即出现make: arm-linux-gcc:命令未找到的错误提示。

我开始检查如下:

1,终端输入gedit /etc/profile

在出现的配置文件中,可以看到环境变量(在最后一行)为

export PATH=$PATH:/usr/local/arm/4.4.3/bin

环境变量的设置没错。

2. 之前arm-linux-gcc.4.3.3的编译器都安装好了的,在终端输入 arm-linux-gcc -v

arm-linux-gcc -v

Using built-in specs.

Target: arm-none-linux-gnueabi

Configured with: /opt/FriendlyARM/mini2440/build-toolschain/working/src/gcc-4.4.3/configure --build=i386-build_redhat-linux-gnu --host=i386-build_redhat-linux-gnu --target=arm-none-linux-gnueabi --prefix=/opt/FriendlyARM/toolschain/4.4.3 --with-sysroot=/opt/FriendlyARM/toolschain/4.4.3/arm-none-linux-gnueabi//sys-root --enable-languages=c,c++ --disable-multilib --with-arch=armv4t --with-cpu=arm920t --with-tune=arm920t --with-float=soft --with-pkgversion=ctng-1.6.1 --disable-sjlj-exceptions --enable-__cxa_atexit --with-gmp=/opt/FriendlyARM/toolschain/4.4.3 --with-mpfr=/opt/FriendlyARM/toolschain/4.4.3 --with-ppl=/opt/FriendlyARM/toolschain/4.4.3 --with-cloog=/opt/FriendlyARM/toolschain/4.4.3 --with-mpc=/opt/FriendlyARM/toolschain/4.4.3 --with-local-prefix=/opt/FriendlyARM/toolschain/4.4.3/arm-none-linux-gnueabi//sys-root --disable-nls --enable-threads=posix --enable-symvers=gnu --enable-c99 --enable-long-long --enable-target-optspace

Thread model: posix

gcc version 4.4.3 (ctng-1.6.1)

以上说明4.4.3的编译器已经成功安装好。

以上说明4.4.3的编译器已经成功安装好。

以上说明4.4.3的编译器已经成功安装好。

后来发现原因如下:

exportPATH=$PATH:/usr/local/arm/4.4.3/bin

是设置当前用户的PATH,而sudo执行make的时候,使用的是超级用户权限,那也就使用了超级用户的PATH(但是这个PATH里,并没有/usr/local/arm/4.4.3/bin)

解决方法:

1.先打开一个超级用户权限的shell:

命令:sudo –s

2.在当前shell下,设置环境变量:

命令:gedit /etc/profile

在文件末端加上export PATH=$PATH:/usr/local/arm/4.4.3/bin,并保存。

3. 执行source /etc/profile这是避免重新启动ubuntu而又使刚刚修改的环境变量生效的方法。

再进入到/opt/FriendlyARM/mini2440/linux-2.6.32.2目录,执行make zImage(有可能加sudo),arm-linux-gcc了,可以编译了

如果觉得《arm-linux-gcc找不到命令 ubuntu 下搭建arm-linux-gcc 命令未找到问题》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。