驱动开发环境搭建

来自个人维基
跳转至: 导航搜索

目录

准备开发工具

暂略

下载内核源码

获取源码列表:

$:sudo apt-cache search linux-source

返回:

linux-source - Linux kernel source with Ubuntu patches
linux-source-2.6.38 - Linux kernel source for version 2.6.38 with Ubuntu patches

下载之:

$:sudo apt-get install linux-source-2.6.38

下载完成后,会在/usr/src/中出现一个 "linux-source-2.6.38"文件夹和一个指向 "linux-source-2.6.32.tar.bz2"的同名符号链接,进入该目录并解压之:

$:tar jxvf linux-source-2.6.32.tar.bz2

编译内核

配置.config(其他选项可以通过 make help查看)

$:make menuconfig
$:make

结束后,将生成一个新的文件: vmlinux

$:make modules /* 编译 模块 */
$:make modules_install  /*这条命令能在/lib/modules目录下产生一个目录*/

使用内核

拷贝文件(进入/usr/src/linux-source-2.6.38/):

$:cp arch/x86_64/boot/bzImage /boot/vmlinuz-2.6.38
$:cp System.map /boot/System.map-2.6.38

生成 initrd.img文件

$:cd /lib/modules/2.6.38.2/
$:update-initramfs -c -k 2.6.38-8-generic

自动查找新内核,并添加至grub引导

$:update-grub

重启系统

$:reboot 或 shutdown -r now

验证:

$:uname -a
结果为:
Linux tgdn-1828 2.6.38.2 #1 SMP Fri Feb 10 12:28:43 CST 2012 x86_64 x86_64 x86_64 GNU/Linux

参考文献:

http://www.linuxidc.com/Linux/2010-09/28656.htm

http://www.ylmf.net/ubuntu/tips/201010126648.html

http://hi.baidu.com/imfam520/blog/item/1abb60d14d083f259b5027c4.html

http://linux.vbird.org/linux_basic/0540kernel.php

http://wenku.baidu.com/view/58b260717fd5360cba1adb11.html