我想从头开始为 beaglebone black 构建一个 Ubuntu 内核。我已经找了两天多可以下载内核源代码的地方了,但没有找到任何东西。
所以,请告诉我从哪里可以获得内核源代码。
答案1
duckduckgo.com 中 ubuntu 内核源代码的第一个结果是https://wiki.ubuntu.com/Kernel/SourceCode它解释了获取和编译 Ubuntu 内核的过程。我在这里重现它:
所有 Ubuntu 内核源代码都在 git 下维护。每个版本的源代码都保存在 kernel.ubuntu.com 上自己的 git 存储库中。这些可以在 gitweb 中浏览,官方的 Ubuntu 树位于 ubuntu/ 目录中。 Ubuntu Linux 内核 git 存储库位于 git://kernel.ubuntu.com/ubuntu/ubuntu-.git 或 http://kernel.ubuntu.com/git-repos/ubuntu/ubuntu-.git。要获取本地副本,您可以简单地 git clone 您感兴趣的版本的存储库,如下所示。 git 命令是 git-core 包的一部分:
git clone git://kernel.ubuntu.com/ubuntu/ubuntu-<release>.git
例如获取特立独行树:
git clone git://kernel.ubuntu.com/ubuntu/ubuntu-maverick.git
这将下载数百兆字节的数据。如果您计划开发多个内核版本,则可以通过下载上游内核树来节省空间和时间。请注意,一旦这两棵树绑在一起,您就无法在不损坏 Ubuntu 树的情况下删除原始 Linus 树:
git clone git://kernel.ubuntu.com/ubuntu/linux.git git clone --reference linux git://kernel.ubuntu.com/ubuntu/ubuntu-karmic.git git clone --reference linux git://kernel.ubuntu.com/ubuntu/ubuntu-maverick.git
在每种情况下,您最终都会得到一个新目录 ubuntu - 包含源代码和完整历史记录,可以使用每个目录中的 git 命令进行操作。
默认情况下,您将拥有最新版本的内核树,即主树。您可以使用发布标签切换到任何以前发布的内核版本。要获取版本中标记版本的完整列表,如下所示:
$ git tag -l Ubuntu-* Ubuntu-2.6.27-7.10 Ubuntu-2.6.27-7.11 Ubuntu-2.6.27-7.12 Ubuntu-2.6.27-7.13 Ubuntu-2.6.27-7.14 $
要查看 2.6.27-7.13 版本,您可以简单地签出指向该版本的新分支:
git checkout -b temp Ubuntu-2.6.27-7.13
然后,您可以操纵发布,例如添加新的提交。