ubuntu 内核树

原创 2016年08月31日 12:10:19
    最近学习编写驱动程序,编写驱动,首先要构建内核树,记得以前编写驱动时,直接指定了内核源码的位置,但是在ubuntu上内核版本和源码版本不一致,编译时出了很多错误。在网上搜了一下,才明白,编写模块驱动,首先要构建内核树。ubuntu上不带内核源码,一般的方法是下载内核重新编译一遍,构建内核树。但是这样做有点麻烦,又网上搜集一下,发现ubuntu上自带内核树,在/lib/modules 目录下。

root@wang:/lib/modules/2.6.35-22-generic/build# ls
arch crypto drivers fs init Kbuild lib mm net scripts sound tools usr
block Documentation firmware include ipc kernel Makefile Module.symvers samples security source ubuntu virt
root@wang:/lib/modules/2.6.35-22-generic/build# pwd
/lib/modules/2.6.35-22-generic/build
Makefile 可以这样写:
  1. root@wang:/work/wanghuan/drives# cat Makefile -n
  2.      1    #===============================================================================
  3.      2    # Filename: Makefile
  4.      3    # Description:
  5.      4    #
  6.      5    # Author: wanghuan
  7.      6    # Company:
  8.      7    #
  9.      8    #==============================================================================
  10.      9    
  11.     10    obj-m :=cdev.o #目标文件
  12.     11    KDIR :=/lib/modules/2.6.35-22-generic/build #内核路径
  13.     12    PWD := $(shell pwd) #模块源文件路径
  14.     13    all:    
  15.     14        $(MAKE) -C $(KDIR) SUBDIRS=$(PWD) modules
  16.     15        @rm -rf *.mod.*
  17.     16        @rm -rf .*.cmd
  18.     17        @rm -rf *.o
  19.     18        @rm -rf Module.*
  20.     19        chmod a+x cdev.ko
  21.     20    clean:
  22.     21        rm -rf *.ko
                                 
<script>window._bd_share_config={"common":{"bdSnsKey":{},"bdText":"","bdMini":"2","bdMiniList":false,"bdPic":"","bdStyle":"0","bdSize":"16"},"share":{}};with(document)0[(getElementsByTagName('head')[0]||body).appendChild(createElement('script')).src='http://bdimg.share.baidu.com/static/api/js/share.js?v=89860593.js?cdnversion='+~(-new Date()/36e5)];</script>
阅读(615) | 评论(0) | 转发(1) |
给主人留下些什么吧!~~
评论热议
版权声明:本文为博主原创文章,转载请注明出处。

Ubuntu10.04内核树的建立及其Hello World 模块的加载

作为一个Linux驱动编程的新手,刚刚开始接触kernel部分,很多东西需要去学习,本身在大学时代硬件基础比较薄弱,现在由于做嵌入式-系统移植的工作,需要涉及很多kernel的知识,kernel不同于...

Ubuntu14.04构建内核源码树的初级实践

内核作Llinux中最为关键也是最为神秘的部分,对于初学者来说是一座无法绕过的大山。很多时候,所要进行的学习和研究就建立在对内核具有一定了解的基础上。 笔者迫于需要进行内核模块的编译,于是就不得不掌握...

ubuntu10.10构建内核树

驱动程序和用户程序可不一样,它是作为一个模块连接到内核模块来运行的,运行在内核空间里面。 所以要运行我们自己构造的模块,需要自己的系统已经配置好内核树,然后把目标模块和内核树连接起来运行! 可以查...
  • sun_z_x
  • sun_z_x
  • 2013年11月21日 10:43
  • 694

ubuntu内核源码树的建立

开始读的时候,一而再的看见要创建自己的内核源码树.起初并不是很明白源码树是什么,经过网上的搜寻,找了点概念,其实应该很形象,树的形式就是主干,树枝,树叶,都是一层一层的,逻辑性比较强,所以,明白了吧,...

Ubuntu 内核树建立

驱动程序和用户程序可不一样,它是作为一个模块连接到内核模块来运行的,运行在内核空间里面。所以要运行我们自己构造的模块,需要自己的系统已经配置好内核树,然后把目标模块和内核树连接起来运行!可以查看一下自...

Ubuntu编译内核树

什么是内核树?刚开始我也没弄明白,通过这几天的学习,有所感悟,就说说我的理解吧!从形式上看,内核树与内核源码的目录结构形式是相同的,都是由各个层次的文件目录结构组成,但是其中的具体内容肯定是不同的。从...

ubuntu 2.6.22 内核树建立

本文是参考了网上多篇帖子而写的算不上什么原创。唯一值得欣慰的只不过在本机上实现罢了。因为毕竟失败了几次。也因为本人是初学驱动编程 很多简单的问题在我来说是相当的困难的。望有识之士不要笑话。最后,希望本...

Ubuntu编译内核树以及简单驱动编程

什么是内核树?刚开始我也没弄明白,通过这几天的学习,有所感悟,就说说我的理解吧!从形式上看,内核树与内核源码的目录结构形式是相同的,都是由各个层次的文件目录结构组成,但是其中的具体内容肯定是不同的。从...

Ubuntu+下构建内核源码树_图文教程

Ubuntu下构建内核源码树       网上好多文章,他大爷的都是转来转去,每一篇中用的。索性还是自己整理一篇吧。       网上牛人多,但是小白问题更多,更何况咱们这号不入门的,因为最近学内...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:ubuntu 内核树
举报原因:
原因补充:

(最多只允许输入30个字)