Debian 7.6 64bit 驱动开发 内核源码树搭建

本文详细介绍了如何在Debian 7.6系统上搭建64位内核源码树,包括搜索和安装内核源码包,构建源码树,配置、编译内核及模块,并通过编写Hello World模块进行测试,确保驱动开发环境的正确设置。
摘要由CSDN通过智能技术生成

1,搜索源码包

apt-get update

搜索源码包
root@demo-2:~/dm# apt-cache search linux-source
linux-source-3.2 - Linux kernel source for version 3.2 with Debian patches
linux-source - Linux kernel source (meta-package)
linux-source-2.6 - Linux kernel source (dummy package)
linux-source-3.16 - Linux kernel source for version 3.16 with Debian patches

2、构造源码树

tar -xvjf linux-source-2.6.26.tar.bz2 
apt-get install ncurses-dev

# make
# make bzImage
# make modules // 编译模块
# make modules_install // 安装模块
OK 完成!
在/lib/modules下生成新的目录/lib/modules/2.6.26-2-generic/。 在编译驱动模块时,要用到这个路径下的build目录。

前在Ubuntu里写个kernel module 的 hello world. make出错.后来知道是因为Ubuntu没有KERNEL 原码树, 以为Ubuntu主打桌面,而且Ubuntu桌面是比较慢.
所以就换用Debian了. 但是Debian 装好后还是没有原码树…
所以在这里记录一下安装的方法:
  1. 查看自己系统的内核版本:

  hengl@lhdebian:~$ uname -r

  2.6.26-1-686

  2. 安装相应版本的内核原码包:

  hengl@lhdebian:~$ sudo apt-get install linux-source-2.6.26

  然后在/usr/src/ 下就会有内核原码包,是一个压缩包.

  hengl@lhdebian:~$ ls /usr/src/

  linux-source-2.6.26.tar.bz2

  3. 解压该包:

  hengl@lhdebian:/usr/src$ sudo tar -xvf linux-source-2.6.26

  然后会生成内核原码目录: linux-source-2.6.26

  4. 配置内核:

  hengl@lhdebian:/usr/src/linux-source-2.6.26$ sudo make oldconfig

  也可以使用别的配置方式 : menuconfig , xconfig. 看自己的需求了.

  5. 编译内核:

  hengl@lhdebian:/usr/src/linux-source-2.6.26$ sudo make bzImage

  这个操作要花一些时间,然后会在当前目录下www.linuxidc.com生成一个新的文件: vmlinux

  6. 编译 模块:

  hengl@lhdebian:/usr/src/linux-source-2.6.26$ sudo make modules

  这里要花更长一些时间… …

  7.安装 模块:

  hengl@lhdebian:/usr/src/linux-source-2.6.26$ sudo make modules_install

  然后会在 /lib/modules/ 目录下生成 目录 : 2.6.26. make 模块的时候用到的就是它了.

  至此, 就搞了, 重启一下系统, 写个网上到处可以找到的hello world试试:

//hello.c

  #include

  #include

  MODULE_LICENSE("Dual BSD/GPL");

  static int hello_init(
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值