首页 > 其他分享 >内核模块makefile

内核模块makefile

时间:2024-05-06 13:45:22浏览次数:21  
标签:KERNEL hds make makefile CURRENT LINUX PATH 内核模块

obj-m:=hds.o #根据make的自动推导原则,make会自动将源程序hds.c编译成目标程序hds.o。
#所有在配置文件中标记为-m的模块将被编译成可动态加载进内核的模块。即后缀为.ko的文件。
CURRENT_PATH:=$(shell pwd) #参数化,将模块源码路径保存在CURRENT_PATH中
LINUX_KERNEL:=$(shell uname -r) #参数化,将当前内核版本保存在LINUX_KERNEL中
LINUX_KERNEL_PATH:=/usr/src/linux-headers-$(LINUX_KERNEL)
#参数化,将内核源代码的绝对路径保存在LINUX_KERNEL_PATH中
all:
make -C $(LINUX_KERNEL_PATH) M=$(CURRENT_PATH) modules #编译模块
clean:
make -C $(LINUX_KERNEL_PATH) M=$(CURRENT_PATH) clean #清理

标签:KERNEL,hds,make,makefile,CURRENT,LINUX,PATH,内核模块
From: https://www.cnblogs.com/yuxj/p/18174867

相关文章

  • Makefile
    编译工具及构建工具介绍在之前的课程中,都是直接使用gcc对代码进行编译,这对简单的工程是可以的,但当我们遇到复杂的工程时,每次用gcc等编译工具去操作就会显得很低效。因此make工具就出现了,make的出现是为了解决手动编译和链接大型工程的问题,它可以避免重复的工作,提高效率,保证正确......
  • 自动生成Makefile
    提示:文章文章目录前言一、背景二、2.12.2总结前言前期疑问:本文目标:一、背景最近二、使用autotool生成makefile4.0程序文件建立目录:mkdirincludesrc编写程序:include/str.h#include<stdio.h>intstr(char*string);编写程序:src/str.c#src/str.c......
  • 【Linux】Makefile 基本语法
    make:一般说的是GNUMake,是一个软件,将源代码文件编译成可执行的二进制文件;Makefile:make工具编译的时候需要使用Makefile文件,Makefile文件描述了整个工程的编译、连接规则。接上一节:make工具和Makefile文件的引入Makefile举例注意Makefile的大小写!!!需要......
  • 在Linux中,内核模块是什么以及如何加载和卸载它们?
    在Linux中,内核模块是内核的一部分,但它们不是编译进内核的代码。这些模块可以在运行时动态地加载到内核中,或者从内核中卸载,从而扩展或修改内核的功能而无需重启系统。内核模块的使用提供了灵活性和易于维护的特点。1.内核模块的作用扩展内核功能:内核模块允许在不修改内核源代码......
  • Linux项目自动化构建工具 --- make/Makefile
    文章目录make/Makefile文件1背景2理解2.1创建执行代码2.2创建makefile文件2.3运行make指令2.3.1依赖关系2.3.2依赖方法2.3.3原理2.4项目清理make/Makefile文件1背景会不会写makefile,从一个侧面说明了一个人是否具备完成大型工程的能力一个工程中的源文......
  • 如何高效的编写makefile
    技术笔记!一、简介1.Make        1)工程管理器,顾名思义,是指管理较多的文件。        2)Make工程管理器也就是个“自动编译管理器”,这里的“自动”是指它能够根据文件时间戳,自动发现更新过的文件而减少编译的工作量,同时,它通过读入Makefile文件的内容来执行大......
  • 18_makefile基本语法(下)
    makefile基本语法(下)1.wildcard函数格式:$(wildcardPATTENR)功能:展开指定的目录举例:在/home/test目录有一个a.c的c文件和一个test的文件夹,在/home/test/test文件夹下有一个b.c的文件。​ 我们在当前目录下创建的makefile里面写下如下代码,echo前面加了@符号,echo这......
  • 17_makefile基本语法(上)
    makefile基本语法(上)一.设置vim首行缩进vi/etc/vim/vimrc(rc结尾的一般为配置文件)输入settabstop=4,保存后退出即可。便发现vim打开后的缩进变成4个空格了二.Makefile基本语法语法格式:目标:依赖(tab)命令举例:目标:all依赖:空命令:gcchello.c-ohello上面的例子也......
  • 使用 wsl+makefile+clangd编辑stm32代码环境的搭建
    使用wsl+makefile+clangd编辑stm32代码环境的搭建安装wsl环境可以看看下面的文章安装与换源都提及,相信大家可以安装成功的https://www.cnblogs.com/banmei-brandy/p/16218660.html安装make、bear、clangd、arm-none-eabi-gcc、最新的构建库sudoaptinstallmakebearclang......
  • 学习Makefile
    1.-c代表只编译不链接最后再链接所有.o文件生成main可执行文件2.Version1hello(目标):main.cppprinthello.cpp(依赖)g++...(命令)Version2定义变量TARGET依赖OBJ,先去寻找OBJ里的.o文件,没有就执行下面代码生成最后调用下面命令链接Version3三个变量定义不变:添......