gpt4 book ai didi

c - 如何为.ko程序Linux创建一个应用程序(C程序)

转载 作者:行者123 更新时间:2023-11-30 21:22:00 25 4
gpt4 key购买 nike

我有:

  1. C 程序 main.c与具有函数调用的主函数。
  2. 另一个 C 程序 test.c与函数定义。
  3. 标题 test.h具有共同的声明。

请仔细阅读我的目标我的目标是拥有一个内核对象和一个使用它的应用程序。我需要在运行时向该函数提供一些输入并进行处理。

我正在终端中使用它。谁能帮帮我吗?

最佳答案

为了编译内核模块,您可以编写这个基本的 makefile :

obj-m += <your_obj_file>.o

all:
make -C /lib/modules/$(shell uname -r)/build M=$(PWD) modules

clean:
make -C /lib/modules/$(shell uname -r)/build M=$(PWD) clean

之后,您必须使用以下命令构建并加载模块

make
insmod <your_module>.ko

但是当我读到你的内容时,我猜你真正想做的并不是内核模块。我认为您想要构建一个共享库(.so 文件或 .dll),不是吗?

如果您要构建 Linux 共享库,请调用以下命令:

gcc -c -fPIC test.c
gcc -shared test.o -o libtest.so

gcc -c main.c
gcc main.o -o <binary name> -ltest

但是如果您只想以经典方式构建静态二进制文件:

gcc -c test.c
gcc -c main.c

gcc test.o main.o -o <binary name>

关于c - 如何为.ko程序Linux创建一个应用程序(C程序),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12093906/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com