辅导:总结编译linux内核的步骤
来源:优易学  2011-9-26 14:28:44   【优易学:中国教育考试门户网】   资料下载   IT书店

  其实,通常其它操作系统的内核编译是比较繁琐的。然而,由于Debian强大的dpkg软件包管理系统,使得内核的升级、编译也变得容易很多。如果下面的步骤都注意并执行了,编译内核不是很复杂的事情,我在基于debian的ubuntu系统上第一次编译就成功了。编译过程如下,与各位分享:
  修改ubuntu 6.10上的/bin/sh
  在ubuntu6.10上,/bin/sh默认是链接到/bin/dash的,当你从源代码编译软件的时候,dash可能会导致一些错误,至少我遇到过 类似问题,因此,我把/bin/sh的连接改为了/bin/bash。(估计中国绝大部分使用者都是用的bash吧)
  如果你使用的就是6.10,那么应该这样做:
  rm -f /bin/sh
  ln -s /bin/bash /bin/sh
  安装相关的软件,包括
  a、Ubuntu Dapper Drake 6.06 LTS 首选“软件”,自己想办法安装吧
  b、build-essential,里面有gcc,make等东西要用到。
  c. kernel-package,里面有make-kpkg要用。
  d. qt库,主要是为了用make xconfig图形界面配置,你要安装libqt3-headers,libqt3-mt-dev等
  e. libncurses5-dev,主要是用make menuconfig,我就用这个。
  f. gtk库,用于make gconfig。安装gtk2.0,相关lib。
  下载源码
  到www.kernel.org下载当前最新版的源代码。下载的分类有p,f等区别,要下f类型的连接,不要下补丁。下好的源代码应该有40多M。然后解压缩源代码。
  tar xjvf linux-2.6.20.tar.bz2 -C /usr/src/linux-2.6.20
  cd /usr/src/linux-2.6.20
  补丁
  如果需要给内核源代码打补丁,首先下载相对应的补丁,在这里我们以patch.bz2代替。将其放到/usr/src目录下,然后用下来的命令来使其生效:
  bzip2 -dc /usr/src/patch.bz2 | patch -p1 –dry-run
  bzip2 -dc /usr/src/patch.bz2 | patch -p1
  注意!此时,你应该一直处于/usr/src/linux-2.6.20目录下。
  第一个命令仅仅是试验性质的,它并不会对你的源代码产生什么变动。如果没有产生什么错误信息,你才能用第二个命令来对源代码产生真正的修补动作,如果第一条指令就出错了,请别继续执行下去,看看错误出在哪里。
  同样,你也可以向你的内核提供预补丁,例如,一旦你发现有一个自己需要的特性在2.6.19 rc4中提供,但这个版本的内核并没有发行所有的完整源代码,只有patch-2.6.19-rc4.bz2是可选的。于是,你就可以提供这个patch 到2.6.18的内核中,但不是2.6.8.1,或者2.6.8.2。
  创建链接
  创建一个指向新内核代码的符号
  sudo ln -s /usr/src/linux-2.6.16ck12 linux
  然后进入这个目录:
  cd /usr/src/linux
  清理
  运行命令 make mrproper 来清一下包。

[1] [2] [3] 下一页

责任编辑:小草

文章搜索:
 相关文章
热点资讯
热门课程培训