编写内核程序出错error求帮助,该如何处理

编写内核程序出错error求帮助,该如何处理,第1张

首先说一下,你要编译驱动程序,不再是跟原本编译应用程序那样可以在当前目录下直接make就好。

因为编译内核驱动的时候,是要用到内核文件里的头文件,还有内核提供的接口函数,要借助于内核文件夹里的makefile来编译你写好的驱动源代码,如果按一般的 *** 作,你就得把源代码放到内核文件夹指定的目录下,然后再在那个目录下得makefile里添加一些语句,比如obj -m什么的(把相应的驱动代码编译成模块),然后到内核文件夹的顶层目录make,生成相应的模块文件,就有你问题3的那一大堆东西,其中ko就是要用到的。

把一些驱动编译成模块,和编译进内核的区别,你可以去了解下。。编译成模块用的是-m。

而为了方便你可以在任何目录下直接用make来编译驱动代码;就有以下这指令:

$(MAKE) -C $(KERNELDIR) M=$(PWD) modules

-C 指定的就是内核文件夹所在的地方

M=当前路径

modules的,是和make 联合起来的make modules命令,这个命令你可以去查查。

ko文件就是用insmod命令插入到内核中,在去添加相应的设备文件,就可以在内核里跑起来了。

当然可以,c++是跨平台的,,c++可以用boost ,但是得在linux 下边重新编译,而stl 这个东西可以直接用的。你可以在linux 下边找到stl 的库函数的。

boost 编译完了,得把相应的so 加到 g+ +路径或者env 变量路径里面。。

以上就是关于编写内核程序出错error求帮助,该如何处理全部的内容,包括:编写内核程序出错error求帮助,该如何处理、编写linux内核程序使用C++时 可以使用BOOST,STL类似的函数库么、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/9765060.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-01
下一篇 2023-05-01

发表评论

登录后才能评论

评论列表(0条)

保存