zoukankan      html  css  js  c++  java
  • linux kernel 模块多文件编译

    /***************************************************************************
     *                      linux kernel 模块多文件编译
     * 声明:
     *     本文主要是记录在调试驱动的阶段,我们可能会更倾向于使用模块插入的方式
     * 来进行驱动调试,这样可以大大缩短调试时间。之前在调试gt9xx Touch的时候也
     * 是采用这种方式,这里还是记录一下,日后方便查找。
     *
     *                                          2016-2-2 深圳 南山平山村 曾剑锋
     **************************************************************************/
    
    一、cat Makefile
        ifneq ($(KERNELRELEASE),)
            # gt9xxm.o去掉后缀就是生成的.ko的名字
            # 多文件编译注意gt9xxm.o、gt9xxm-objs的命名方式
            obj-m := gt9xxm.o       
            gt9xxm-objs := gt9xx.o gt9xx_update.o goodix_tool.o
        else
        KDIR := /home/zengjf/kernel   # 指定内核所在的目录
        all:
            make -C $(KDIR) M=$(PWD) modules
    
        clean:
            rm -f *.ko *.o *.mod.o *.mod.c *.symvers *.order
        endif
    
    二、输出结果:
        zengjf@zengjf:~/kernel/drivers/input/touchscreen/gt9xx$ ls -al
        total 2348
        drwxrwxr-x 3 zengjf zengjf   4096 Jan 26 20:14 .
        drwxrwxr-x 3 zengjf zengjf   4096 Jan 27 18:40 ..
        -rwxrw-rw- 1 zengjf zengjf  37261 Jan 26 11:50 goodix_tool.c
        -rw-rw-r-- 1 zengjf zengjf 124592 Jan 26 11:50 goodix_tool.o
        -rw-rw-r-- 1 zengjf zengjf  29395 Jan 26 11:50 .goodix_tool.o.cmd
        -rwxrw-rw- 1 zengjf zengjf  89249 Jan 26 20:14 gt9xx.c
        -rwxrw-rw- 1 zengjf zengjf 309322 Nov 28  2014 gt9xx_firmware.h
        -rwxrw-rw- 1 zengjf zengjf  12086 Jan 26 11:50 gt9xx.h
        -rw-rw-r-- 1 zengjf zengjf 559323 Jan 26 11:50 gt9xxm.ko
        -rw-rw-r-- 1 zengjf zengjf    427 Jan 26 11:50 .gt9xxm.ko.cmd
        -rw-rw-r-- 1 zengjf zengjf   2477 Jan 26 11:50 gt9xxm.mod.c
        -rw-rw-r-- 1 zengjf zengjf  23044 Jan 26 11:50 gt9xxm.mod.o
        -rw-rw-r-- 1 zengjf zengjf  18307 Jan 26 11:50 .gt9xxm.mod.o.cmd
        -rw-rw-r-- 1 zengjf zengjf 537572 Jan 26 11:50 gt9xxm.o
        -rw-rw-r-- 1 zengjf zengjf    434 Jan 26 11:50 .gt9xxm.o.cmd
        -rw-rw-r-- 1 zengjf zengjf 178752 Jan 26 11:50 gt9xx.o
        -rw-rw-r-- 1 zengjf zengjf  29794 Jan 26 11:50 .gt9xx.o.cmd
        -rwxrw-rw- 1 zengjf zengjf 120272 Nov 28  2014 gt9xx_update.c
        -rw-rw-r-- 1 zengjf zengjf 240220 Jan 26 11:50 gt9xx_update.o
        -rw-rw-r-- 1 zengjf zengjf  29626 Jan 26 11:50 .gt9xx_update.o.cmd
        -rw-rw-r-- 1 zengjf zengjf    239 Jan 25 17:20 Makefile
        -rw-rw-r-- 1 zengjf zengjf     73 Jan 26 11:50 modules.order
        -rw-rw-r-- 1 zengjf zengjf      0 Jan 25 17:01 Module.symvers
        drwxrwxr-x 2 zengjf zengjf   4096 Jan 26 11:50 .tmp_versions
        zengjf@zengjf:~/kernel/drivers/input/touchscreen/gt9xx$ 
  • 相关阅读:
    SLS评测报告
    Flash对不同的浏览器的兼容性
    NodeJS的Cluster模块使用
    Varnish+Xcache构建高性能WEB构架初探
    Memcached Client的释疑
    Firebug及YSlow简介与使用图文详解
    PHP Memcached 实现简单数据库缓存
    PHP + Memcache 实现Session共享
    Linux 开机关机在线求助与指令输入
    Linux 基础学习篇笔记 Linux基础知识
  • 原文地址:https://www.cnblogs.com/zengjfgit/p/5177425.html
Copyright © 2011-2022 走看看