制作linux内核安装包
作者:网络转载 发布时间:[ 2014/6/20 11:19:06 ] 推荐标签:Linux 操作系统
3、编写安装脚本
在这之前,首先需要修改下install.sh脚本
在文件适当位置加上变量定义
INSTALLKERNEL=installkernel
然后编写安装脚本 install_kernel.sh
|
#!/bin/bash
PROGRAM=install_kernel.sh
if [ "$0" != "${PROGRAM}" ]; then
if [ "$0" != "./""${PROGRAM}" ]; then
echo "ERROR: ****** !"
exit
fi
fi
echo "0%..."
/bin/cp -rf lib/modules/3.5.3 /lib/modules/
echo "30%..."
/bin/sh depmod.sh /sbin/depmod 3.5.3
echo "60%..."
sh install.sh 3.5.3 bzImage System.map "/boot"
echo ""
echo "install success !"
|
4、打包kernel-3.5.3文件夹下的内容
制作完成,拿到设备上,解压,执行install_kernel.sh即可完成内核安装。
制作linux模块编译环境
好,现在你制作了一个内核安装包,现在有人要将以前的驱动,重新编译,以适应这个新的内核。你总不能把你编译的源码打个包给他的吧,太大了。
其实只要拷贝几个必要的目录可以了,以下还是以3.5.3为例,制作一个模块编译环境的安装包。
新建文件夹 kernel-3.5.3-devel
kernel-3.5.3-devel下新建usr/src/kernel/3.5.3目录
拷贝源码目录下arch/x86 到3.5.3/arch下 (可以把boot文件夹删掉,节省空间)
拷贝源码目录下include到3.5.3下
拷贝源码目录下scripts到3.5.3下
拷贝源码目录下usr 到3.5.3下
拷贝源码目录下 .config Kbuild Kconfig Makefile Module.symvers modules.builtin modules.order System.map到3.5.3下
Kernel-3.5.3下新建目录lib/modules/3.5.3
然后lib/modules/3.5.3中,建立build连接文件,连接到../../../usr/src/kernel/3.5.3
好,打包kernel-3.5.3-devel文件夹下的文件和目录,做好了一个编译环境的安装包,使用者先使用内核安装包安装内核,然后使用本安装包,直接解压到自己设备的根目录。重启切换到3.5.3内核下,即可进行模块的开发和编译了。

sales@spasvo.com