当前位置:首页 » 编程软件 » ubuntu可以重新编译吗

ubuntu可以重新编译吗

发布时间: 2024-11-15 19:09:10

1. 如何重新编译linux内核

因为一般电脑安装的系统都是Windows,而整个编译过程都需要在Linux环境下实现,所以最好是在虚拟机里安装Linux系统来完成这一过程。我使用的虚拟机是VMware-workstation-full-v7.1.4。
然后,我们需要下载一个较高版本的Linux系统的镜像文件,安装在虚拟机上,作为编译环境。我使用的是ubuntu-11.04-desktop-i386。之所以选择较高版本,是因为它的界面比较方便用户操作。
然后下载一个Linux内核源代码文件,将它保存到虚拟机上新安装的系统中去。并解压到/usr/src目录。我使用的是linux-2.6.36,下载低版本的原因是,小巧轻便,易于编译。
解压命令如下:
bzip2
-d
linux-2.6.36.tar.bz2
tar
-xvf
linux-2.6.36.ta
修改/usr/src/linux-2.6.36/kernel/sys.c文件,在文件末尾增加一个系统调用函数。自行编写一个简单的程序即可,只为测试用。
修改/usr/src/linux-2.6.36/arch/x86/kernel/syscall_table_32.S,为新添加的程序配置系统调用号。
在/usr/src/linux-2.6.36/arch/x86/include/asm/unistd_32.h中配置系统调用表。
下面就是最重要的内核编译与安装:
首先配置编译信息,使其生成适合当前机器的Makefile,输入make
oldconf
ig。
接着还要输入make
menuconfig,在字符界面下进行必要的细微的修改。
然后要经过四步编译过程(直接输入命令即可):
(1)make
bzImage
将内核编译为压缩映像,存储源码根目录下的“System.map”文件中。
(2)make
moles
编译各个模块。
(3)sudo
make
moles_install
安装模块
(4)sudo
make
install
安装内核
第(2)(3)步等待时间较长,可能需要数个小时,请耐心等待。
无报错的话重启进入GRUB界面,就可以看到新编译的内核了。
按回车键进入我们编译的目标内核中,用关键词搜索查看新增加的系统调用“my
call”是否已在内核中:
编写测试程序,调用新添加的系统调用:
测试成功,说明系统调用添加成功,进而说明内核编译成功!
以上的办法你可以试一下,希望对你有所帮助。

2. 谁能给个Ubuntu编译内核的详细步骤啊,我的是Ubuntu10.04,想编译一下更高版本的内核,网上方法试过很多了

ubuntu千万别自己搞内核编译,因为ubuntu系统对内核是有修改的,你自己就算编译成功,以后系统也会出现很多问题。

热点内容
vb软件加密 发布:2024-11-15 21:17:23 浏览:595
本地ip可以搭服务器吗 发布:2024-11-15 21:04:27 浏览:162
阿里巴巴python 发布:2024-11-15 20:56:25 浏览:783
博图脚本编辑 发布:2024-11-15 20:41:06 浏览:313
带密码的箱子钥匙在哪里 发布:2024-11-15 20:40:12 浏览:236
两个次梁相交怎么配置 发布:2024-11-15 20:27:35 浏览:373
android关机实现 发布:2024-11-15 20:26:42 浏览:56
木糠压缩原理 发布:2024-11-15 20:22:53 浏览:654
编译原理难以理解的问题 发布:2024-11-15 20:11:25 浏览:131
安卓9是什么水平 发布:2024-11-15 20:06:57 浏览:185