3、milk

编程入门 行业动态 更新时间:2024-10-07 21:39:52

3、<a href=https://www.elefans.com/category/jswz/34/1769478.html style=milk"/>

3、milk

特别注意:以下所有操作必须再同一个终端命令行下进行。

在milk-v duo的SDK的目录下,按照如下步骤单步进行(预准备环境):

source build/cvisetup.sh
defconfig cv1800b_sophpi_duo_sd
build_all

然后在milk-v duo的SDK目录外,新建一个文件夹,例如命名为hello_module,进入hello_module文件夹;
创建一个hello_module.c文件,文件内容如下:

#include <linux/kernel.h>
#include <linux/module.h>static int __init hello_module_init(void)
{printk("Hello, Milk-V duo module is installed !\n");return 0;
}static void __exit hello_module_exit(void)
{printk("Good-bye, Milk-V duo module was removed!\n");
}module_init(hello_module_init);
module_exit(hello_module_exit);
MODULE_LICENSE("GPL");

然后再创建一个Makefile文件,文件内容如下(注:需要将第一行的SDK_DIR 变量换成自己实际目录):

SDK_DIR = /root/duo/cvi_mmf_sdk
KERN_DIR = $(SDK_DIR)/linux_5.10/build/cv1800b_sophpi_duo_sdall:make -C $(KERN_DIR) M=$(PWD) modules clean:make -C $(KERN_DIR) M=$(PWD) modules cleanrm -rf modules.orderobj-m += hello_module.o

最后输入:make命令,等待编译完成即可看到hello_module.ko文件;
输入:file hello_module.ko命令,可以看到如下信息(sha1可能不同):

hello_module.ko: ELF 64-bit LSB relocatable, UCB RISC-V, RVC, soft-float ABI, version 1 (SYSV), BuildID[sha1]=39f7273db7a2d530d9fdfe0fd77a802a5dd50267, not stripped

至此最简单的内核模块编译完成,可以下载到板子上,进行模块的安装或卸载。进行相关操作时,会看到对应的日志。

QQ:763314235,会在第一时间处理。

更多推荐

3、milk

本文发布于:2024-02-28 11:28:18,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1769395.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:milk

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!