Linux kernel buildroot-如何更改内核版本字符串

Linux kernel buildroot-如何更改内核版本字符串,linux-kernel,release,buildroot,Linux Kernel,Release,Buildroot,我使用buildroot和Armstrong linux(Linux4sam)在SAM9G25 EK板上工作。 我的脚本正在创建linux版本“2.6.39+”,而这个“+”令人困惑(/lib/modules文件夹等)。我想把它去掉。我发现只有两个文件.uImage.cmd和kernel.release包含这个字符串,但都是生成的 这个字符串是在哪里创建的?您有一个.config?在那里查找分配给CONFIG\u LOCALVERSION的值 要在内核的发行版中没有指定本地版本,请删除CONFI

我使用buildroot和Armstrong linux(Linux4sam)在SAM9G25 EK板上工作。 我的脚本正在创建linux版本“2.6.39+”,而这个“+”令人困惑(/lib/modules文件夹等)。我想把它去掉。我发现只有两个文件.uImage.cmd和kernel.release包含这个字符串,但都是生成的


这个字符串是在哪里创建的?

您有一个
.config
?在那里查找分配给
CONFIG\u LOCALVERSION
的值

要在内核的发行版中没有指定本地版本,请删除
CONFIG\u LOCALVERSION
,或者在包含该版本的行开头添加一个
#
,将其注释掉

违约应为:

#CONFIG_LOCALVERSION is not set

在这种情况下,主要原因是: 脚本/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

我注释掉了这部分。

不幸的是,未设置CONFIG_LOCALVERSION=“”\CONFIG_LOCALVERSION\u AUTO将
CONFIG_LOCALVERSION=“”
更改为
。\CONFIG_LOCALVERSION未设置
@Bartlomiej GrzeskowiakSo当您不是时,您假装是2.6.39。因此,在运行make之前设置LOCALVERSION(即:export LOCALVERSION=“”)将完成相同的任务。根据脚本,“touch.scmversion”也可以工作。