buildroot - 如何更改内核版本字符串
Posted
技术标签:
【中文标题】buildroot - 如何更改内核版本字符串【英文标题】:buildroot - how to change kernel version string 【发布时间】:2012-10-06 07:59:10 【问题描述】:我在带有 buildroot 和 Armstrong linux (Linux4sam) 的 SAM9G25 EK 板上工作。 我的脚本正在创建 linux 版本“2.6.39+”,而这个“+”令人困惑(/lib/modules 文件夹等)。我想删除它。我发现只有两个文件 .uImage.cmd 和 kernel.release 包含这个字符串,但都生成了。
这个字符串是在哪里创建的?
【问题讨论】:
【参考方案1】:你有.config
?在那里查找分配给CONFIG_LOCALVERSION
的值。
要在内核版本中没有指定本地版本,请删除CONFIG_LOCALVERSION
或通过在包含它的行开头以#
将其注释掉。
默认为:
#CONFIG_LOCALVERSION is not set
【讨论】:
不幸的是 CONFIG_LOCALVERSION="" #CONFIG_LOCALVERSION_AUTO 没有设置 将CONFIG_LOCALVERSION=""
更改为#CONFIG_LOCALVERSION is not set
。 @Bartlomiej Grzeskowiak【参考方案2】:
在这种情况下,主要原因是: 脚本/setlocalversion 行 >170:
# append a plus sign if the repository is not in a clean
# annotated or signed tagged state (as git describe only
# looks at signed or annotated tags - git tag -a/-s) and
# LOCALVERSION= is not specified
if test "$LOCALVERSION+set" != "set"; then
scm=$(scm_version --short)
res="$res$scm:++"
fi
我把这部分注释掉了。
【讨论】:
所以你在假装是 2.6.39 而不是。 所以在运行 make 之前设置 LOCALVERSION(即:export LOCALVERSION="")会完成同样的事情。从脚本中,“touch .scmversion”也可以工作。以上是关于buildroot - 如何更改内核版本字符串的主要内容,如果未能解决你的问题,请参考以下文章