`
izuoyan
  • 浏览: 9196879 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

两个编译2.4与2.6内核模块的Makefile 模板

阅读更多

Makefile for linux 2.4 kernel

TARGET := modulename

INCLUDE := -I/opt/celinux-040503/include

CFLAGS := -O2 -Wall -DMODULE -D__KERNEL__ -DLINUX

CC := arm-926ejs-linux-gcc

${TARGET}.o: ${TARGET}.c

$(CC) $(CFLAGS) ${INCLUDE} -c ${TARGET}.c

Makefile for linux 2.6 kernel

obj-m += modulename.o

#EXTRA_CFLAGS += -I/linux-2.6.19.2-mx/drivers/media/video/

KDIR := /linux-2.6.19.2

PWD:= $(shell pwd)

CROSS_ARCH := ARCH=arm CROSS_COMPILE=arm-926ejs-linux-

default:

$(MAKE) $(CROSS_ARCH) -C $(KDIR) SUBDIRS=$(PWD) modules

clean:

$(MAKE) $(CROSS_ARCH) -C $(KDIR) SUBDIRS=$(PWD) clean

-@rm -f Module.symvers

.PHONY: default clean

分享到:
评论

相关推荐

    2.4和2.6内核模块和驱动(转载)

    最后,关于许可证声明,2.6内核要求每个模块明确声明其许可证类型,以符合GPL规定。而在2.4内核中,虽然也有许可证要求,但2.6内核对此执行得更为严格。 总结来说,从2.4到2.6内核的迁移,开发者需要关注模块编译...

    从 2.4 到 2.6:Linux 内核可装载模块机制.pdf

    2.4内核与2.6内核在模块输出内核符号方面也存在区别。在2.6版本中,内核提供了更完善的符号输出机制,允许模块通过`EXPORT_SYMBOL`宏暴露函数供其他模块调用,这增强了模块间的互操作性和重用性。 ### 命令行输入...

    Linux2.6内核模块编译Makefile[归类].pdf

    例如,在Linux 2.4内核模块编译中,使用SUBDIRS变量来指定子目录的路径,而在Linux 2.6内核模块编译中,使用M变量来指定当前工作目录。 七、编译模块的其他规则 在Makefile中,我们还可以看到其他的编译规则,例如...

    LINUX2.6内核makefile详解

    "LINUX2.6内核makefile详解" Linux 2.6 内核 Makefile 详解是 Linux 内核开发中非常重要的一部分。Makefile 是一个脚本文件,用于描述如何编译和构建 Linux 内核。该文件是 Linux 内核开发的核心组件之一,对开发...

    从 2.4 到 2.6:Linux 内核可装载模块机制的改变对设备驱动的影响

    在 2.4 内核中,模块编译主要依赖于自定义的 Makefile 文件,而在 2.6 版本中,则引入了 kbuild,这是一个更加灵活和强大的构建系统,可以更好地管理和自动化模块的构建过程。 ##### 2.4 版本的 Makefile 示例 在 ...

    基于Linux-2.6内核模块程序设计.pdf

    本文将探讨2.6内核的模块程序设计,包括编译过程、关键特性和设计规范,并提供一个基本框架的示例程序。 首先,Linux 2.6内核模块最直观的变化是文件扩展名由".o"更改为".ko",表示kernel object,表明模块是内核的...

    Linux 2.6内核模块编程范例

    "Linux 2.6内核模块编程范例"是针对这一主题的教程,它包括一个基本的"Hello, World!"程序以及一个标准的Makefile模板,帮助开发者了解如何编写和构建内核模块。 首先,我们来看"Hello, World!"程序,Exhello.c。这...

    linux2.6内核编译过程

    Linux 2.6 内核中有很多内核模块,每个模块都有其特定的功能。 内核模块的目录结构 Linux 2.6 内核模块的目录结构如下: * /lib/modules/<kernel-version>/build:存储内核模块的编译文件,包括 Makefile、....

    Linux内核可装载模块对设备驱动的影响

    2.6内核的Makefile模板(清单3)使用`KERNELRELEASE`变量,通过内核源码目录下的Makefile进行编译。 3. 版本检查: 2.6内核增加了更严格的版本检查,确保模块与内核版本匹配,防止不兼容的模块加载。 4. 初始化与...

    linux2.6内核Makefile详解

    ### Linux 2.6 内核 Makefile 详解 #### 概述 Linux 内核的构建过程由一系列复杂的 Makefile 控制,其中最为核心的是 Kbuild 体系。这一体系在 2.6 版本的内核中进行了大幅改进,以适应更复杂的功能需求和更为灵活...

    Linux内核2.6 Makefile文件

    Linux内核2.6的Makefile文件是整个操作系统编译过程的核心,它是构建系统的关键部分。这个复杂的脚本管理着内核源代码的编译、链接以及模块的生成,确保了整个开发流程的高效和一致。在Linux内核源代码树中,...

    kbuild makefile 总结

    - **`MODULE0`** 和 **`MODULE1`**:定义了两个模块名称。 - **`fcap_common-objs`**:列出了公共对象文件列表。 - **`$(MODULE0)-objs`**:指定了 `fcap0` 模块所需的对象文件,包括公共对象文件。 以上 Makefile ...

    2.6 内核 驱动程序编译的 Makefile

    2.6 内核 驱动程序编译的 Makefile

    Linux 2.6内核的编译步骤及模块的动态加载

    Linux 2.6内核的编译过程通常包括以下几个步骤: 1. **获取内核源代码**: - 如果你的Linux系统已经包含内核源代码,它可能位于`/usr/src`目录下。 - 若源代码缺失,你可以通过各种方式下载,例如从官方Git仓库、...

    Linux 2.6内核移植-内核设置

    Linux 2.6内核移植涉及的关键知识点包括: 1. **Linux内核更新与改进**:Linux内核随着时间不断进化,引入新技术以增强其可伸缩性、可用性和技术支持。新版本内核会进行严格测试,确保稳定性和兼容性。 2. **内核...

    Linux内核Makefile分析

    Linux内核Makefile是构建整个Linux操作系统的核心编译脚本,它定义了如何从源代码构建可执行的内核模块和整个内核。通过深入分析Linux2.6内核的Makefile,我们可以揭示其编译过程的奥秘,这对于理解和改进操作系统、...

    Linux2.6下Makefile文件的分析与研究

    1. **模块格式**:与早期版本不同,Linux2.6内核下的模块格式由`.o`改为`.ko`,这有助于模块接口的标准化,便于设备的控制和管理。 2. **调试信息**:在编译过程中加入所有`prinfk`调试信息,这有助于问题定位和...

Global site tag (gtag.js) - Google Analytics