如果我想为ARM架构构建自定义内核,是否需要:
( a)从kernel.org下载内核,对内核进行更改,使用交叉编译器构建它(比如代码sourcery之类的)
( b)从某个地方找到一个特定于ARM的内核,找到一些补丁,使用特定于ARM的工具编译它?
可以为ARM架构构建任何自定义内核吗?
总的来说,我对内核知之甚少。
发布于 2011-09-05 18:01:20
Linux内核源代码tarball和git存储库包括所有受支持的体系结构(如ARM )的代码。
子目录Documentation/arm/包含一些与ARM相关的文档,在进行进一步研究之前,您可能应该了解这些文档。
ARM特定的代码位于arch/arm/子目录中(某些特定于ARM的驱动程序可能位于drivers/*/子目录中)。
因此,继续从kernel.org下载普通内核tarball,并从读取Documentation/arm/README开始,如下所示:
为了编译ARM Linux,您需要一个能够生成带有GNU扩展的ARM ELF代码的编译器。GCC 3.3 .
看起来,在阅读了该文件之后,您将得到许多答案(也许还有更多的问题,但不要犹豫地问它们:)。
发布于 2011-09-05 18:00:59
所有体系结构的内核源代码都是相同的。它主要是用C编写的,带有一些特定于拱形的程序集。
构建ARM最简单的方法就是已经在ARM上运行了。然后,您可以简单地遵循常规的编译文档。
如果您想要从不同的体系结构构建,这称为交叉编译。我自己从来没有这样做过,但我知道你需要建立一个交叉编译工具链才能做到这一点。
这个方法应该能让你开始工作。
https://unix.stackexchange.com/questions/20142
复制相似问题