make:arm-linux-gcc not found

来源:互联网 发布:网络通信专利翻译 编辑:程序博客网 时间:2024/05/17 04:03

问题: 

报错“make:arm-linux-gcc not found”;

终端输入:arm-linux-gcc -v 有正确的输出;

编译时报错。


解决方案:直接在Makefile 文件里把“CROSS_COMPILE    = arm-linux-”

改为:“CROSS_COMPILE = /opt/FriendlyARM/toolschain/4.5.1/bin/arm-linux-”.


结果:验证通过


还存在的问题:

直接在终端下输入“arm-linux-gcc -v”得到正确的输出;

在终端下输入“sudo arm-linux-gcc -v"说找不到命令。


下文转自:http://blog.163.com/feique001@126/blog/static/2712833820107594821602/


make : arm-linux-gcc not found 

学习心得 2010-05-13 11:16:41 阅读124 评论0 字号:大中小


问题:路径设置明明没有问题,arm-linux-gcc -v ,也可以正确显示版本信息(我用的是4.3.3的EABI编译器),但make zImage时总是提示找不到arm-linux-gcc
可能性分析:
网上资料:
       1.应该是在     makefile   中指出你的   gcc     的源路径

估计是这样

CC=/usr/local/arm/3.3.2/bin/arm-linux-gcc

#CC= gcc

  2.你的arm-linux-gcc不在默认路径内。按上面说的加路径

  3.安装好arm-linux-gcc,然后CC=/usr/local/arm/3.3.2/bin/arm-linux-gcc,修改 Makefile,或者在PATH环境变量加/usr/local/arm/3.3.2/bin路径,这样更好点,用export命令。

  5.由于Makefile可能是你./configure的时候生成的,所以要在./configure之后改,或者在./configure的时候用CC=/usr/local/arm/3.3.2/bin/arm-linux-gcc

我的解决方案:
将Makefile中的CROSS_COMPILE    = arm-linux-,改为CROSS_COMPILE    = /opt/EmbedSky/4.3.3/bin/arm-linux-,此时又提示找不到arm-none-linux-gnueabi-gcc,无奈又改为CROSS_COMPILE    = /opt/EmbedSky/4.3.3/bin/arm-none-linux-gnueabi-
这样可以顺利编译了!
在编译Qtape时,出现如下问题:
 -lcrypt -luuid -lm -ldl -ldl -L/opt/EmbedSky/Qte/x86-qtopia-2.2.0/qtopia/lib -L/opt/EmbedSky/Qte/x86-qtopia-2.2.0/qt2/lib -lqte 
/usr/bin/ld: cannot find -luuid
分析:找不到luuid,他是说找不到libuuid这个库!!
但是我已经安装了,为什么还是找不到呢?
-L 是指定库文件搜索路径
-I 指定头文件的查找目录
-l 指定连接库
无奈,只好将libuuid库从 /lib目录下移到/opt/EmbedSky/Qte/x86-qtopia-2.2.0/qtopia/lib/目录下,
问题解决!
感悟:似乎默认路径经常会出问题!

 

错误:make : arm-linux-gcc not found
 
可能原因:1.应该是在     makefile   中指出你的   gcc     的源路径 
估计是这样 
CC=/usr/local/arm/3.3.2/bin/arm-linux-gcc 
#CC= gcc 
  2.你的arm-linux-gcc不在默认路径内。按上面说的加路径 
  3.安装好arm-linux-gcc,然后CC=/usr/local/arm/3.3.2/bin/arm-linux-gcc,修改Makefile,或者在PATH环境变量加/usr/local/arm/3.3.2/bin路径,这样更好点,用export命令。
  5.由于Makefile可能是你./configure的时候生成的,所以要在./configure之后改,或者在./configure的时候用CC=/usr/local/arm/3.3.2/bin/arm-linux-gcc
  6.


        按照《从入门到精通》中的步骤编译内核,出现了如下问题:

(1)arm-linux-gcc: command can not found. 解决方法:修改Makefile时,CROSS_COMPILE的更改采用绝对路径。

(2)提示linux/mtd/partitions.h中的61行:field 'list' is an incomplete type.解决方法:由于list_head定义于list.h,在partitions.h中包含之,问题解决。

(3)superlpplatform undeclared here(not in a function).   解决办法:在devs.h中声明之。

(4)安装模块时,Warning: you may need to install module-init-tools。 解决方法:

下载module-init-tools-3.0.tar.gz源码包的地方是:http://www.kernel.org/pub/linux/kernel/people/rusty/modules/module-init-tools-3.0.tar.gz   
    接下来, 按照下列步骤安装module-init-tools工具包:   
     tar -zxvf module-init-tools-3.0.tar.gz   
    在module-init-tools-3.0目录下,   
# ./configure --prefix=/   
# make moveold   
# make all install   
# ./generate-modprobe.conf /etc/modprobe.conf   

然后make module_install


原创粉丝点击