我正在尝试构建一个新内核并为该内置内核添加一个新的系统调用,当我尝试在创建新系统调用后使用'make'命令重新编译时,我收到此错误。
scripts/Makefile.build:44: /usr/src/linux-3.0.42/block/helloworld/Makefile: No such file or directory
make[1]: *** No rule to make target `/usr/src/linux-3.0.42/block/helloworld/Makefile'. Stop.
make: *** [block/helloworld] Error 2
如果有人可以帮助我,我将感激不尽:)
答案 0 :(得分:3)
内核模块使用的make版本与您可能使用的版本不同。它大大简化了事情,但起初可能有点混乱。以下是kernel make的文档:http://lwn.net/Articles/21835/
这是关于hello world模块的教程:
c代码:http://tldp.org/LDP/lkmpg/2.6/html/x121.html
相应的makefile:http://tldp.org/LDP/lkmpg/2.6/html/x181.html
答案 1 :(得分:1)
不要带回一个旧帖子,但我遇到了类似的问题,我很惊讶没人提出这个问题。
编辑linux3-x-x / Makefile
时您希望通过修改以下行来包含您的目录:
core-y + = kernel / mm / fs / ipc / security / crypto / block /
到
core-y + = kernel / mm / fs / ipc / security / crypto / block / helloworld /
一个简单的错误就是在每个目录块/ _helloworld /之后忘记 THE SPACE 下划线表示空格
如果您没有该空间,那么无论如何您都会得到上述错误。
以为我会添加这个,其他人正在寻找回应