前面学习了驱动的基础框架,上一篇编译了gcc7.3.0,那么为了方便很好的熟悉流程,本篇,将使用ubuntu18.04,直接编译ubuntu18.04的驱动,然后做好本篇文章的相关实战测试。
获取内核版本号是为了确认内核版本号一致。
注意1:ubuntu的/usr/src下有内核的头文件可编译直接使用。
注意2:本标题章节所编译的内核然后使用该内核编译的驱动是不可兼容的。
进入了配置:
半小时左右编译完成:
把驱动编译城模块,然后加载到内核里面。
这里make过不去,发现这里不能是空格,如下图,才可以:
然后再编译:
编译成功
将驱动拷贝到开发板或者目标系统,然后使用加载指令:
出现问题可能原因一是内核编译使用的编译器和模块使用的编译器版本不一致。
这里我们核对过是一样的,所以此处暂时也不知道如何,如下图:
编译通过:
发现ubuntu中printk终端无打印的问题,是重定向问题,打入内核日志消息了,可以使用dmesg进行查看:

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/154024.html