小白求帮助

盼盼不是小面包 2015-07-12 09:06:53
我准备在redhat上写一个简单的驱动程序,找到书之后,首先照着书敲了代码,但是在make的时候总是报 找不到 /lib/modules/**/build找不到的错误,我用root进入到目录去打开build也提示无法打开,请问这是为什么呢。我在fedora上也试过了,报同样的错。求指点
...全文
163 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
AndersZhuang 2015-07-14
  • 打赏
  • 举报
回复
修改makefile的内核源码路径为你已经编译好的并且和你使用的内核版本一致的路径!
nswcfd 2015-07-13
  • 打赏
  • 举报
回复
补充,在kernel.org下载代码的时候,选择跟你的内核匹配的版本。 不过通常redhat的source跟kernel.org的不太一样,rhl有自己很多的patch,还是去redhat的官网(或centos官网)找跟内核版本匹配的kernel source吧。 或者参考http://wiki.centos.org/HowTos/I_need_the_Kernel_Source (使用yum安装)
nswcfd 2015-07-13
  • 打赏
  • 举报
回复
这是因为这些makefile假设内核的源代码目录在/lib/modules/xxxx/build目录下,但通常这个目录是不存在的。(发行版默认不会安装内核源代码) 简单的方法可以通过发行版的包管理命令yum或apt-get来安装对应的内核源代码。 包的名字,要么叫linux-source,要么叫kernel-source,要么叫linux-kernel-source,等等。 如果只是编译模块的话,通常不需要完整的kernel source(包含.h和.c文件),只需要kernel-headers就可以了(只包含.h文件)。 才发现你是在redhat上,那就干脆直接从kernel.org下载源代码吧。 可以在任何目录解压,编译的时候,修改makefile,把/lib/modules/xxx/build替换为解压的目录就ok了。

4,436

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 内核源代码研究区
社区管理员
  • 内核源代码研究区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧