首页 文章

内核版本更改会导致错误

提问于
浏览
1

我修改了Makefile中的内核版本

VERSION = 3
   PATCHLEVEL = 12
   SUBLEVEL = 0
   EXTRAVERSION = -33-generic

虽然我期望3.12.0-33-generic .

但是,在成功构建内核之后,我在引导过程中发现了错误,

Could not open moddep file /lib/modules/3.x.x.x-22-dirty/modules.dep.bin

我想知道为什么它将'脏'附加到预期的内核版本 .

使用“grep”命令后,我发现有两个文件表明我自己构建的内核版本在内核版本之后附加了“脏” .

/kernel-source/include/config/kernel.release
/kernel-source/generated/utsrelease.h
In the first file: 3.12.0-33-generic-dirty
In the second file: #define UTS_RELEASE "3.12.0-33-generic-dirty"

有没有什么办法解决这一问题 ?谢谢 .

====更新帖子====

我有没有“-dirty”或“”的预期内核版本的步骤

  • 如下修改Makefile
VERSION = 3

PATCHLEVEL = 12

SUBLEVEL = 0

EXTRAVERSION =
  • 使用git命令提交所有更改

  • Make menuconfig

  • Make -j8 LOCALVERSION="-33-generic"

  • 输出内核版本是 3.12.0-33-generic

就这样 .

1 回答

  • 1

    如果Linux内核存储库中存在未提交的更改,则“-dirty”将附加到内核版本 .

    要摆脱它,提交所有未提交的更改 .

    或者,使用LOCALVERSION构建内核:

    make LOCALVERSION="-33-generic"
    

相关问题