zoukankan      html  css  js  c++  java
  • 一个模块包含多目录和源文件,Makefile写法

    假设这样一种情况,一个内核模块有多个目录多个源文件组成,编译成模块是Makefile如何编写呢?

    我这边测试通过的一种方法介绍一下。假设该模块的组成方式如下:

    module--> a.c
               |
               -->b/
                    |
                    -->b1.c
                    -->b2.c


    也就是该模块源代码由a.c和目录b中的源文件b1.c和b2.c组成。

    如果编译这个模块的话,Makefile关键部分如下:

         obj-m += tesmodule.o
         tesmodule-y += a.o
         tesmodule-y += b/b1.o
         tesmodule-y += b/b2.o


    这样的组织方式可以将所有源文件编译到testmodule.o中,并生成模块文件。但是如果目录比较多,而且可能还有多级子目录的话呢,这种方式就有局限性了,不可能一一类出所有文件名的。

    记得内核源码的Makefile中是可以指定目录,并进入目录编译的,诸如下面这种形式:

         obj-m += tesmodule.o
         testmodule-objs := a.o b/


    但是Makefile回报错误,说b不是文件,而是目录。

    各位朋友帮忙分析一下

  • 相关阅读:
    Privacy & Logic
    Rules of Evidence
    Court terms & Judicial opinions
    Objections in Court
    US Trial Procedures
    Jeremy Jaynes v. Va.
    C++\CLI编程(一、命名空间)
    C++\CLI编程(一、命名空间)
    C++关于#include 两种 引用方式
    C++关于#include 两种 引用方式
  • 原文地址:https://www.cnblogs.com/skyofbitbit/p/3680790.html
Copyright © 2011-2022 走看看