LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1702|回复: 15

晕啊!眼看着lfs-svn-20041016就要完成,可出现如此错误!

[复制链接]
发表于 2004-11-16 16:17:30 | 显示全部楼层 |阅读模式
要编译内核时:
# make menuconfig

......
gcc:installation problem,cannot exec 'as':No Such file or directory.
*** the command 'gcc -o conflest -O2 conflest.c failed
*** You must set the environ ment variable CC to a working compoler
root:/usr/src/linux-2.6.8.1#


咋会这样啊?

是不是GCC没装好啊?可偶chroot用/tools/中的环境时也是这样子啊,重新译GCC也出现此错误,可能是哪没设置好!只是偶不知道。


按字面意思是没找到GCC吧?
 楼主| 发表于 2004-11-16 16:18:55 | 显示全部楼层
可在这以前安装别的都不会出现此错误滴!怪事!现在不知道咋办了!:
发表于 2004-11-16 16:20:27 | 显示全部楼层
做一个gcc的alias为CC。。还是软连接gcc为CC??忘记了的说
找不到CC吧
 楼主| 发表于 2004-11-16 16:52:07 | 显示全部楼层
运行

# gcc --version

又可显示出版本是3.4.2。

应是找不到CC了吧!不知道是哪出错了!
发表于 2004-11-17 00:08:30 | 显示全部楼层
as 是  binutils的东西。。。是不是你的binutils没安装对?
发表于 2004-11-17 16:30:14 | 显示全部楼层
如果是大写CC的话,CC应该是Makefile中的一个变量,指定所用的编译器,典型的赋值是这样的:CC = $(CROSS_COMPILE)gcc,默认CROSS_COMPILE为空;CC可以在编译的时候从命令行里面直接传入,不是书中做的那个软连接。
你先试试gcc在chroot环境中可不可以用,可以的话就直接make CC=gcc menuconfig再试试啊
感觉你贴出来的信息不太全,*** You must set the environ ment variable CC to a working compoler
          ~~~~compoler这个单词应该是compiler吧,是你自己写上去的,还是系统显示的?
如果可能再贴出来多一些信息看看啊
 楼主| 发表于 2004-11-17 17:14:22 | 显示全部楼层
我在怀疑是不是剥离调试符号后的结果。


现在不管是译什么,只要

make *****

就会出现这东东!

......
gcc:installation problem,cannot exec 'as':No Such file or directory.
*** the command 'gcc -o conflest -O2 conflest.c failed
*** You must set the environ ment variable CC to a working compoler


PS:~~~~compoler这个单词应该是compiler吧
这东东有可能是偶抄错了!
 楼主| 发表于 2004-11-17 17:17:32 | 显示全部楼层
最初由 threeseconds 发表
如果是大写CC的话,CC应该是Makefile中的一个变量,指定所用的编译器,典型的赋值是这样的:CC = $(CROSS_COMPILE)gcc,默认CROSS_COMPILE为空;CC可以在编译的时候从命令行里面直接传入,不是书中做的那个软连接。
你先试试gcc在chroot环境中可不可以用,可以的话就直接make CC=gcc menuconfig再试试啊
感觉你贴出来的信息不太全,*** You must set the environ ment variable CC to a working compoler
          ~~~~compoler这个单词应该是compiler吧,是你自己写上去的,还是系统显示的?
如果可能再贴出来多一些信息看看啊




偶先试试这法子!
 楼主| 发表于 2004-11-17 20:56:59 | 显示全部楼层
偶回去后,开机:

[root @localhost root]# chroot "$LFS" /usr/bin/env -i \
    HOME=/root TERM="$TERM" PS1='\u:\w\$ ' \
    PATH=/bin:/usr/bin:/sbin:/usr/sbin \
    /bin/bash --login
root:/# cd /usr/src/linux-2.6.8.1
root:/usr/src/linux-2.6.8.1# make mrproper
root:/usr/src/linux-2.6.8.1# make menuconfig
    HOSTCC spripts/basic/fixdep
gcc: installation problem,cannot exec 'as':No such file or directory
make [1]: *** [scripts/basic/fixdep] Error 1
make: *** [scripts_basic] Error 2
root:/usr/src/linux-2.6.8.1#

以为是gcc-3.4.2滴问题,装个gcc-2.95.3试试看。

解压,打好补订(use lfsbook-5.1.1)
root:/tmp/gcc-build# ../gcc-2.95.3/configure --prefix=/opt/gcc-2.95.3 \
>--enable-shared --enable-languages=c \
>--enable-threads=posix
Configuring for a i686-pc-linux-gnuoldld host.
Created "Makefile" in /tmp/gcc-build using "mh-frag" and "mt-frag"
gcc:installation problem,cannot exec 'as':No Such file or directory
*** the command 'gcc -o conflest -O2 conflest.c failed
*** You must set the environ ment variable CC to a working compiler
root:/tmp/gcc-build#


root:/# CC=$(CROSS_COMPILE)gcc
bash:CROSS_COMPILE:command not found.

trying test
root:/# echo 'main(){}' > dummy.c
root:/# cc dummy.c
cc:installation problem,cannot exec 'as':No Such file or directory
root:/#


use
# chroot $LFS /tools/bin/env -i \
    HOME=/root TERM=$TERM PS1='\u:\w\$ ' \
    PATH=/bin:/usr/bin:/sbin:/usr/sbin \
    /tools/bin/bash --login


进入还是一样!

在发生此事之前,也就是还没
# /tools/bin/find /{,usr/}{bin,lib,sbin} -type f \
   -exec /tools/bin/strip --strip-debug '{}' ';'


以前,都是使用正常的!会不会是Stripping again 时把它给废了?

PS:安装GCC-3.4.3 - Pass 1 ------> 用GCC-3.3.3取代。(当时实在是译不过去)Adjusting the toolchain 能通过。
发表于 2004-11-18 00:02:49 | 显示全部楼层
我从来不strip的。。你是不是打错命令了。。。

book中,提示如果打错命令,有可能导致整个LFS作废。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表