Kernel 开发
使用前提
我们需要提前将 Visual Studio Code 和 Docker 环境搭建好,然后使用 Dev Container 来运行 Kernel 的编译环境。
参考教程
可以按照下方教程完成 Kernel 开发的环境搭建。
下载 Kernel 源码
使用 git clone 命令克隆 Kernel 源码。
Linux@host$
git clone --recurse-submodules <git_repo_url>
其中 <git_repo_url> 需要替换成:https://github.com/radxa-pkg/linux-sky1.git
启动开发环境
使用 Visual Studio Code 打开 Kernel 源码目录:一般 Dev Container 拓展会自动识别文件夹下的配置文件,会提示你是否重新打开容器开发环境。
提示
首次启动开发环境时,Dev Containers 会自动下载并安装依赖,需要耐心等待一段时间。
①:点击左下角的 Remote 选项
②:选择 Reopen in Container 选项

编译 Kernel
启动开发环境后,使用 make deb 命令编译 Kernel。
PC@host$
make deb
常见问题 (FAQ)
如何使用增量编译模式?
为了加速验证改动的代码,不做全量编译,只进行增量编译,可以在 Makefile 文件的 debuild 指令增加 -nc 参数。
$(CUSTOM_DEBUILD_ENV) debuild --no-lintian --lintian-hook "lintian --fail-on error,warning --suppress-tags-from-file $(PWD)/debian/common-lintian-overrides -- %p_%v_*.changes" --no-sign -b $(CUSTOM_DEBUILD_ARG) -nc
修改并保存文件后,重新运行 make deb 编译。
如何修改本地构建出的 Debian 包的版本?
以 linux-qcom 仓库 为例,打开 debian/changelog 文件,修改第一行括号里的版本号。
例如:原来文件内容是:
linux-qcom (7.0.11-2) unstable; urgency=medium
把括号里的 7.0.11-2 改成你想要的版本号,比如:
linux-qcom (7.0.11-99) unstable; urgency=medium
然后执行:
PC@host$
make deb
构建出来的 Debian 包版本就是 7.0.11-99。