lamp_lighter 发表于 2014-08-20 20:06

分享:LFS7.5中遇到的问题及解决办法

本帖最后由 lamp_lighter 于 2014-08-20 20:07 编辑

手册:LFS-BOOK-7.5,下载地址:www.linuxfromscratch.org/lfs/downloads/stable/
主机:i686,Ubuntu 14.04
主机内核版本:3.15.3

-----------------------第五章-----------------------
一、编译时的问题:

1.make install '/tools--with-sysroot=': Permission denied
原因:配置../binutils-2.24/configure中,--prefix=/tools和--with-sysroot=$LFS没有分开。注意\不能代替空格的作用。
解决方法:--prefix/tools \
       --with-sysroot=$LFS

2.configure: error: C++ compiler missing or inoperational
原因:没有安装c++编译器
解决办法:sudo apt-get install g++

3.configure: error: cannot run C compiled programs.
原因:编译GCC前,需要将其动态链接库改为/tools,手册中用了一大段命令来完成这件事。在命令行中直接输入脚本时,需要注意行末有时需要输入回车,有时需要输入\
解决办法:照说明输入,别乱加\

4.configure: error: perl >= 5.7.3 with Encode required by Texinfo.
原因:在为perl打补丁时,曾出现一条警告:File hints/linux.sh is read-only; trying to patch anyway。由于linux.sh是只读文件,打补丁失败,文件不完整,因此Texinfo无法正确安装
解决办法:chmod -v u+w hints/linux.sh,照说明重新安装perl,再安装Texinfo

二、部分命令的注释
1.wget -i wget-list -P $LFS/sources
**:在pdf文档中没办法直接打开wget-list,其网址是www.linuxfromscratch.org/lfs/view/stable/wget-list。先把该网页的内容拷贝到wget-list文件中,再执行这条命令

2.find gcc/config -name linux64.h -o -name linux.h -o -name sysv4.h
**:在gcc/config中查找名为linux64.h、linux.h、sysv4.h的文件,注意到-o表示这几个操作是或的关系,即一旦某个式子成立,命令就停止运行。首先看是否有linux64.h,如果没有,再看是否有linux.h

3.sed -e 's@/lib\(64\)\?\(32\)\?/ld@/tools&@g'
**:先把转义字符\拿掉来看表达式,s@/lib(64)?(32)?/ld@/tools&@g
根据sed的规则,紧跟在s后的符号被定义为分隔符,一般用的是/,但是由于替换的内容里含有/,所以分隔符换为@。匹配的内容符合正则表达式的规则,即?表示匹配0次或1次,&替换前面匹配的内容。

-----------------------------------------------------------
第六章和第七章有许多测试的命令,但不是每一个测试都需要完全通过,注意看手册给的提示。

另外:
7.10对Linux终端的配置可能出现键盘乱码的情况,把/etc/sysconfig/console文件改成下列代码可解决问题:
UNICODE=“1"
KEYMAP="us"
FONT="LatArCyrHeb-16 -m 8859-15"
注:字体可以选择其他种类,KEYMAP是出现乱码的原因,"us"对应的是美式键盘

-----------------------------------------------------------

8.4讲述利用GRUB来启动新内核,给的办法是覆盖现有系统的boot loader。如果希望只修改现有的Grub,可以这样做:

忽略8.4节的所有内容,直接在主机中执行update-grub,让grub自动查找硬盘中的内核镜像。我的执行结果是:
Found Linux From Scratch (7.5) on /dev/sda7
然后在开机时就能在Grub界面发现新系统的入口



humjb_1983 发表于 2014-08-20 22:50

搜藏待用,学习,感谢分析!

beyondfly 发表于 2014-08-21 09:22

不错,做LFS是一项很需要耐心的活
页: [1]
查看完整版本: 分享:LFS7.5中遇到的问题及解决办法