# Ubuntu HWE 6.17 内核源码(本机目录,不随仓库提交) **体例**:[../docs/meta/DOCUMENTATION_STYLE.md](../docs/meta/DOCUMENTATION_STYLE.md)。**安装 deb**见 [../docs/kernel-build/OPERATION_Install_CustomKernel_Ubuntu_HWE617.md](../docs/kernel-build/OPERATION_Install_CustomKernel_Ubuntu_HWE617.md)。 若旧环境把解压树放在 `~/kernel-src/linux-hwe-6.17-6.17.0/`,可迁入本仓库: ```bash mkdir -p kernel-src mv ~/kernel-src/linux-hwe-6.17-6.17.0 kernel-src/ # 可选:一并移动同目录下的 .dsc / .orig.tar.gz / .diff.gz 后再删空 ~/kernel-src ``` 解压后的目录应为: `linux-hwe-6.17-6.17.0/` 在 **Ubuntu 24.04 (Noble)** 上推荐在本目录下拉源码(与 `docs/meta/WORK_PROGRESS.md` 一致): ```bash cd /path/to/chromebox_10th_audio_driver/kernel-src sudo sed -i 's/^Types: deb$/Types: deb deb-src/' /etc/apt/sources.list.d/ubuntu.sources 2>/dev/null || true sudo apt update apt-cache showsrc linux-hwe-6.17 | grep -E '^Version:' | head -5 apt source linux-hwe-6.17=<与当前内核一致的 Version> # 或: dpkg-source -x linux-hwe-6.17_*.dsc ``` 若在源码树内做过 **`make defconfig` / `make prepare`** 等,再跑 **`fakeroot debian/rules binary-generic`** 可能报 **source tree is not clean**;在源码根执行 **`make mrproper`** 清理后再构建(会删顶层 `.config`;Debian 构建使用独立 `O=` 输出目录)。 打补丁(可选)与编译: `deps` 会安装 **`libdw-dev`** 等(`make prepare` 时 **gendwarfksyms** 需要 **dwarf.h**)。完整一键包列表另见 [`../scripts/ubuntu-hwe-617-deps-packages.txt`](../scripts/ubuntu-hwe-617-deps-packages.txt)。 ```bash export SRC="$PWD/linux-hwe-6.17-6.17.0" # 若有自定义补丁,必须设置 PATCH=绝对路径(仓库无默认补丁): # export PATCH="$PWD/../patches/ubuntu-hwe-6.17/0001-your.patch" # ../scripts/ubuntu-hwe-617-build.sh apply ../scripts/ubuntu-hwe-617-build.sh deps # Noble 上建议先 build-dep ../scripts/ubuntu-hwe-617-build.sh build ``` 补丁设计与 ChromeOS 深度 diff 流程见 `../docs/kernel-build/OPERATION_ChromeOS_Kernel_Deep_Diff.md`、`../patches/ubuntu-hwe-6.17/README.md`。 编译成功后,deb 通常在本目录(`kernel-src/`)。**在目标机上安装与重启**的完整说明见:[docs/kernel-build/OPERATION_Install_CustomKernel_Ubuntu_HWE617.md](../docs/kernel-build/OPERATION_Install_CustomKernel_Ubuntu_HWE617.md)(含 `linux-base` 依赖、`linux-image-unsigned` 与 Secure Boot、可选 headers/DKMS)。 ## 完整构建失败时(FR8;NFR6) 记录并写入 **[WORK_PROGRESS](../docs/meta/WORK_PROGRESS.md)**(便于协作重试):**并行相关**(如 `CONCURRENCY_LEVEL`、`DEB_BUILD_OPTIONS`、`make -j`)、**命令末尾错误摘要**、**若曾 `tee` 的日志路径**、**磁盘空间**(`df -h`)、**是否遇 `source tree is not clean`**(见上文 `mrproper` 注意)。耗时与占用仅作事实记录,不作为 SLA。 根目录 `.gitignore` 已忽略 `linux-hwe-6.17-*` 与 `*.orig.tar.*` 等,换机后请在本目录重新 `apt source`。