修补和编译内核,在哪个目录中

时间:2016-12-28 21:14:08

标签: linux linux-kernel

我试图将补丁应用到我的内核源代码,但收效甚微。目标机器实际上是一些ARM设备,但我还没有编译内核,所以我认为我从一个x86_64内核开始。这只是稍微容易一点:)

现在,根据一些教程,似乎我们应该使用/usr/src/linux-something中的源代码。但是当我试图修补那里时,我得到了

File Documentation/sysrq.txt is read-only; trying to patch anyway
patch: **** Can't create temporary file Documentation/sysrq.txt.oG1oiZW : Permission denied
甚至在sudo下。所以我尝试将补丁和linux源文件夹复制到我的主目录并从那里修补它。这很有效。这为什么会在编译时产生任何奇怪的副作用?

2 个答案:

答案 0 :(得分:0)

某些发行版的软件包管理器在/usr/src中安装内核源代码,特定于发行版的构建脚本可能会假定源位于该目录中。

但是,如果从kernel.org下载vanilla内核源代码,您应该可以在任何地方构建它。

答案 1 :(得分:0)

您似乎无权/usr/src/linux-something。下载内核源代码,尽可能地下载内核源代码,然后修补&编译它。

kernel.org下载的源代码构建x86_64 arch内核很好,如果你想为特殊的板构建一个arm arch内核,使用buildrootopenwrt会更好。< / p>