在路上...

The development of life
我们一直都在努力,有您的支持,将走得更远...

站内搜索: Google

  :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

软件准备:

gcc-3.2.2-5.i386.rpm  :用来编译

ncurses-5.6.tar.gz:用来配合make menuconfig 命令配置内核

bison-2.4.tar.gz :语法解析器

flex-2.5.35.tar.bz2 :词法解析器

m4-1.4.9.tar.gz:

modutils-2.4.26.tar.bz2 :

module-init-tools-3.2.2.tar.bz2:  2.6配套工具包

linux-2.6.15.5.tar.bz2 : 内核源码包

第一步:

    将上面所有软件都拷贝到虚拟机中(非/mnt下)

第二步:

    将内核源码包linux-2.6.15.5.tar.bz2 放入/usr/src目录中,并用 tar -jxvf linux-2.6.15.5.tar.bz2 将其解压

    ,然后用命令将linxu符号连接映射到linux-2.6.15.5 :ln -s  linux-2.6.15.5  linux

第三步:rpm -ivh gcc-3.2.2-5.i386.rpm 安装GCC

第三步:安装ncurses-5.6.tar.gz

           tar zxvf  ncurses-5.6.tar.gz  

           进入解压后目录 ./configure

           make

           make install  安装

第四步:安装bison-2.4.tar.gz

            ./configure --prefix=/usr
             make

             make check  :本软件包自带测试套件,能执行一些测试,以确定它是否编译正确

             make install

第五步:安装flex-2.5.35.tar.bz2

./configure --prefix=/usr &&
make &&
make install

一些程序并不知道flex而是试图寻找lex程序(事实上,flex是实现lex功能的另一种也是更好的选择)。为了满足少数一些程序的需要,我们将创建一个lex脚本,这个脚本调用flex并通过它来模仿lex的输出文件命名惯例。

通过下面的命令创建一个新文件 /usr/bin/lex :

cat > /usr/bin/lex << "EOF"
#!/bin/sh
# Begin /usr/bin/lex

exec /usr/bin/flex -l "$@"

# End /usr/bin/lex
EOF
chmod 755 /usr/bin/lex

第六步:升级m4

首先要卸载原来的m4,然后再安装新的m4

./configure --prefix=/usr

             make

             make check  :本软件包自带测试套件,能执行一些测试,以确定它是否编译正确

             make install

第七步:安装modutils-2.4.26.tar.bz2 (如果原来安装了modutils 需要将其卸载:rpm -e --nodeps modutils)

 ./configure &&
make &&
make install

(参照:http://docs.huihoo.com/lfs/lfs-4.0/chapter06/modutils.html)

第八步:安装module-init-tools-3.2.2.tar.bz2

tar -jxvf module-init-tools-3.2.2.tar.bz2

./configure --prefix=/sbin

make

make install

./generate-modprobe.conf /etc/modprobe.conf

第九步:配置内核

make menuconfig

第十步:编译内核

make bzImage (生成使用gzip压缩的内核,生成的文件位于/usr/src/linux/arch/i386/boot目录)

make modules modules_install(编译内核模块并安装到/lib/modules/2.6.15.5目录)

posted on 2009-09-02 22:01  palam  阅读(332)  评论(0编辑  收藏  举报