1、在
http://www.kernel.org/上下载最新的内核源代码linux-2.6.33.1.tar.bz2,放在/liqiong/Linux内核 目录下,liqiong是Linux OS的第一个用户名。
2、进入Linux内核源码所在的目录(cd Linux内核),解压该内核代码到/usr/src下:
sudo tar -xjvf linux-2.6.33.1.tar.bz2 -C /usr/src
3、进入Linux内核源码解压后的目录/usr/src/linux-2.6.33.1(cd /usr/src/linux-2.6.33.1)
4、sudo make mrproper 净化解压后的源代码
5、sudo make menuconfig 对内核选项进行配置
在配置过程中会发生如下错误:
*** Unable to find the ncurses libraries or the
*** required header files.
*** 'make menuconfig' requires the ncurses libraries.
***
*** Install ncurses (ncurses-devel) and try again.
***
make[1]: *** [scripts/kconfig/dochecklxdialog] 错误 1
make: *** [menuconfig] 错误2
解决办法:
(1)cd / 进入根目录后,在终端输入:sudo apt-get install ncurses
信息:
正在读取软件包列表... 完成
正在分析软件包的依赖关系树
正在读取状态信息... 完成
现在没有可用的软件包 ncurses,但是它被其它的软件包引用了。
这可能意味着这个缺失的软件包可能已被废弃,
或者只能在其他发布源中找到
E: 软件包 ncurses 还没有可供安装的候选者
(2)然后接着在终端输入:sudo apt-get install libncurses*
信息:
正在读取软件包列表... 完成
正在分析软件包的依赖关系树
正在读取状态信息... 完成
注意,根据正则表达式“libncurses*”选中了 libncurses5
注意,根据正则表达式“libncurses*”选中了 libncurses-dev
注意,选取 libncurses5-dev 而非 libncurses-dev
注意,根据正则表达式“libncurses*”选中了 libncursesw5-dbg
注意,根据正则表达式“libncurses*”选中了 libncursesw5-dev
注意,根据正则表达式“libncurses*”选中了 libncurses-ruby
注意,根据正则表达式“libncurses*”选中了 libncurses5-dbg
注意,根据正则表达式“libncurses*”选中了 libncurses5-dev
注意,根据正则表达式“libncurses*”选中了 libncursesw5
将会安装下列额外的软件包:
libncurses5-dbg libncurses5-dev libncursesw5-dbg libncursesw5-dev
下列【新】软件包将被安装:
libncurses5-dbg libncurses5-dev libncursesw5-dbg libncursesw5-dev
共升级了 0 个软件包,新安装了 4 个软件包,要卸载 0 个软件包,有 92 个软件未被升级。
需要下载 6,201kB 的软件包。
解压缩后会消耗掉 21.1MB 的额外空间。
您希望继续执行吗?[Y/n]y
获取:1 http://cn.archive.ubuntu.com karmic/main libncurses5-dev 5.7+20090803-2ubuntu2 [1,564kB]
获取:2 http://cn.archive.ubuntu.com karmic/main libncursesw5-dev 5.7+20090803-2ubuntu2 [484kB]
获取:3 http://cn.archive.ubuntu.com karmic/main libncurses5-dbg 5.7+20090803-2ubuntu2 [1,958kB]
获取:4 http://cn.archive.ubuntu.com karmic/main libncursesw5-dbg 5.7+20090803-2ubuntu2 [2,194kB]
下载 6,201kB,耗时 2min 41s (38.5kB/s)
选中了曾被取消选择的软件包 libncurses5-dev。
(正在读取数据库 ... 系统当前总共安装有 112582 个文件和目录。)
正在解压缩 libncurses5-dev (从 .../libncurses5-dev_5.7+20090803-2ubuntu2_i386.deb) ...
选中了曾被取消选择的软件包 libncursesw5-dev。
正在解压缩 libncursesw5-dev (从 .../libncursesw5-dev_5.7+20090803-2ubuntu2_i386.deb) ...
选中了曾被取消选择的软件包 libncurses5-dbg。
正在解压缩 libncurses5-dbg (从 .../libncurses5-dbg_5.7+20090803-2ubuntu2_i386.deb) ...
选中了曾被取消选择的软件包 libncursesw5-dbg。
正在解压缩 libncursesw5-dbg (从 .../libncursesw5-dbg_5.7+20090803-2ubuntu2_i386.deb) ...
正在处理用于 man-db 的触发器...
正在设置 libncurses5-dev (5.7+20090803-2ubuntu2) ...
正在设置 libncursesw5-dev (5.7+20090803-2ubuntu2) ...
正在设置 libncurses5-dbg (5.7+20090803-2ubuntu2) ...
正在设置 libncursesw5-dbg (5.7+20090803-2ubuntu2) ...
(3)再cd /usr/src/linux-2.6.33.1进入内核所在目录,再次输入sudo make menuconfig就好了!
6、对于配置可选择General Setup或者选择其他的自定义选项保存后退出。
7、sudo make dep 建立模块间的依赖信息
8、sudo make clean 删除配置时留下的一些不用的文件
(7、8两步可能对于一些PC没有作用)
9、sudo make bzImage 编译内核,内核较小时可以用make zImage
10、sudo make modules 编译内核模块
当然,在编译内核时,可通过make-j<n>来加速内核的编译,n一般等于CPU数量的两倍。单核,n=2;双核,n=4.即执行sudo make -j4就可以编译了!
11、sudo make modules_install 安装内核模块
12、sudo make install 安装内核
13、cd / 后在终端输入:sudo mkinitramfs 2.6.33.1 -o /boot/initrd.img-2.6.33.1-generic
14、到此为止,构建内核完毕,第十二步把内核映象和System.map拷贝到/boot/下
#sudo cp /usr/src/linux-2.6.33.1/arch/i386/boot/bzImage /boot/vmlinuz-2.6.33.1-generic
#sudo cp System.map /boot/System.map-KERNEL_VERSION
#sudo ln -s /boot/System.map-KERNEL_VERSION /boot/System.map
15、
(1)修改grub配置文件
在终端输入:sudo update-grub2,就会把刚才编译的内核加入了Grub;(此时就可以重启了,重启后在Grub启动项里多了Ubuntu, Linux 2.6.33.1-generic)
若还需修改(在Ubuntu10.04中没有采用menu.lst,而是用的grub.cfg(/boot/grub/)),则修改grub.cfg就可以了,
在终端中输入:sudo gedit /boot/grub/grub.cfg 用root账户进入grub.cfg并编辑
(或用sudo chmod +w /boot/grub/grub.cfg改变grub.cfg的权限后在进行编辑)
如将Grub中的menuentry "Ubuntu, Linux 2.6.33.1-generic"{...}修改为menuentry "Ubuntu, Linux 2.6.33.1-liqiong"{...}(Linux 2.6.33.1-generic是我们刚才编译的内核)
(2)修改default变量
在/boot/grub/grub.cfg中,设置set default="【某个数字】"(设置Grub启动项里的默认启动项)
在Grub启动项里,从0数起,我的XP在第10项,所以set default="10",即XP就是默认的启动项了。
最后重启一切都OK了!
分享到:
相关推荐
为了成功地进行内核编译,确保系统拥有所有必需的软件包是至关重要的。下面我们将详细探讨这些必要的软件包及其作用。 首先,我们需要理解编译内核的基本步骤:获取源码、配置内核、编译以及安装。每一步都需要特定...
Ubuntu 10.04 编译安装最新版本 Linux-2.6.34 内核 本文将详细介绍如何在 Ubuntu 10.04 中编译安装最新版本的 Linux 2.6.34 内核。该过程可以分为五个步骤:准备工作、下载内核源代码、配置内核、编译安装新内核和...
Ubuntu 10.04 是基于 Linux 内核的一个稳定版本,非常适合那些希望在稳定环境下运行应用程序的用户。 #### 知识点二:OpenCV 2.2.0 简介 - **OpenCV (Open Source Computer Vision Library)** 是一个开源计算机视觉...
通过以上步骤,你就成功地在Ubuntu 10.04上搭建了Scratchbox交叉编译环境。现在,你可以使用Scratchbox来为ARM架构或其他目标平台编译软件,这在开发嵌入式设备时非常有用。记得在编译前,确保你的目标系统库和依赖...
在本文中,我们主要介绍了在 Ubuntu 10.04 中解决声卡驱动问题的步骤,从下载官方驱动包到编译源代码,最后重启机器。这些步骤可以帮助用户解决耳机等声音问题,如耳机不出声,或是外接音箱无声音等。 本文的知识点...
在Ubuntu 10.04环境下编译Android源码的过程是一项复杂的任务,涉及到多个步骤和技术。首先,要了解Git,这是一个分布式版本控制系统,由Linux Torvalds创建,用于管理Linux内核开发。与传统的集中式版本控制系统如...
### Ubuntu10.04下驱动开发环境搭建详解 #### 一、概述 本文将详细介绍如何在Ubuntu 10.04系统上搭建一个完整的驱动开发环境,包括Linux内核的下载、编译以及替换旧内核的过程,并通过示例说明如何创建一个简单的...
本文将详细介绍在Ubuntu 10.04版本下编译Linux 2.6.36内核的具体步骤,帮助读者理解整个编译流程。 #### 二、系统环境与准备工作 **系统环境:** - 操作系统:Ubuntu 10.04 LTS - 内核版本:2.6.32-21-generic - ...
**内核编译**是指将Linux内核源代码转换为可执行的内核映像的过程。在Linux中,内核负责管理计算机系统的资源和提供底层服务,如进程调度、内存管理、网络栈等。为了添加或定制功能,如新增系统调用,需要重新编译...
- **网络连接与内核编译**:下载的img映像可能无法直接识别USB网卡。此时,需要编译内核来支持USB网络适配器。通过下载源码并使用交叉编译工具进行编译,选择支持网络配置和USB网络适配器的选项,以确保系统能够顺利...
Ubuntu 10.04 安装 Xen 虚拟机 Xen 是一个开源的...安装 Xen 虚拟机需要安装必要的工具和库、下载和安装 Xen、配置 Xen、编译 Xen 化内核等步骤。通过这些步骤,我们可以在 Ubuntu 10.04 上成功安装 Xen 虚拟机。
尽管这里显示的是Red Hat Linux的信息,但Ubuntu 10.04也基于类似的内核版本和架构。 2. **GCC版本**: ```bash [ary@localhost ary]$ gcc -v Reading specs from /usr/lib/gcc-lib/i386-redhat-linux/3.2.2/...
通过以上步骤,您已成功在Ubuntu10.04上为mini2440平台构建了一个完整的嵌入式开发环境。这一环境不仅包括了必要的交叉编译工具,还涵盖了烧写与文件传输功能,以及代码浏览能力,为后续的嵌入式项目开发奠定了坚实...
通过上述步骤,你可以在Ubuntu 10.04上构建一个完整的Android开发环境,包括源码获取、构建环境搭建以及模拟器使用等关键环节。这对于初学者来说是一份非常宝贵的指南,帮助他们快速上手Android应用开发。
尽管本文中提到的操作主要针对 Ubuntu 10.04,但大多数步骤同样适用于其他版本的 Ubuntu 或类似的 Linux 发行版。对于希望深入了解虚拟化技术或在生产环境中部署 Xen 的用户来说,本文提供了一个很好的起点。
【Ubuntu 10.04下编译Android源码实用指南】 在Ubuntu 10.04系统中编译Android源码是一项复杂的过程,需要掌握Git版本控制系统以及Android的Repo工具。Git是Linux Torvalds为管理Linux内核开发而创建的分布式版本...
在Ubuntu 10.04版本上安装Macbuntu,首先需要确保系统已经更新到最新状态,并且安装了必要的开发工具和库,以便顺利进行后续的编译和安装过程。用户通常需要通过终端执行`sudo apt-get update && sudo apt-get ...
标题中的“ubuntu10.04安装oracle10.2g”表明了本文将讨论如何在Ubuntu 10.04这个Linux发行版上安装Oracle Database 10g Release 2 (10.2g)。Ubuntu 10.04(Lucid Lynx)是一个较旧的版本,而Oracle 10g也是早期的...
Ubuntu 10.04是一款长期支持(LTS)版本的Linux发行版,它为用户提供了一个稳定且安全的平台,适合进行操作系统的学习与开发。 NachOS是一种教学目的的操作系统,它由加州大学伯克利分校设计,旨在让学生了解操作...