Linux Kernel版本号后面为什么有加号?Linux Kernel去除版本号后面加号的方法

2023 年全新激活工具珍藏版(Win10、Win11、Office、Win7)免费获取>>

我们在应用Linux Kernel的过程中常常会碰到版本信息后边发生减号的难题,为什么会如此呢?应当怎么处理呢?由于可能是用户们改动了Linux.git中的文件,下面就来教大伙儿Linux Kernel去除版本信息后边减号的方法。

内核版本号是依据Makefile里给予的数字转化成的。开启Makefile,文件开始可以见到:

1 VERSION = 3

2 PATCHLEVEL = 10

3 SUBLEVEL = 28

4 EXTRAVERSION =

5 NAME = TOSSUG Baby Fish

和内核版本号转化成有关的文件是 scripts/setlocalversion, 在其中有如下所示的一部分脚本制作:

# scm version string if not at a tagged commit

if test “$CONFIG_LOCALVERSION_AUTO” = “y”; then

# full scm version string

res=“$res$(scm_version)”

else

# 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

fi

假如

CONFIG_LOCALVERSION_AUTO

沒有被配备, LOCALVERSION 都没有标值, 那麼,依据以上的脚本制作, 号就不易被添加了。

具体在编译程序代码的情况下,可以实行:

LOCALVERSION= make

此外,在文件scripts/setlocalversion里边,有一句:

if test -d .git && head=`git rev-parse --verify --short HEAD 2》/dev/null`;

git rev-parse 是因为取下近期的 commit的id:

$ git rev-parse --verify --short HEAD

e77fcc1

charles@taotao:~/code/linux-3.10.28$ git rev-parse --verify HEAD

e77fcc1e9be7a0ab373f96d5b9d58e1136c8c4b0

或是用:

$ git log --pretty=format:‘%h’ -n 1

e77fcc1

${LOCALVERSION set} 是variable expansion modfier.

它有一下几类方式:

${variable:–word}  假如 variable被设置了一个不以空的值,那麼这一关系式的值便是 variable的值;相反,则是 word的值(variable的值不会改变)

${variable:=word} 假如 variale被set或是值非空,那麼这一关系式的值便是 variable的值; 相反,则是 word的值(variable的值被升级)

${variable: word}  假如 variable被设置了一个不以空的值,那麼这一关系式的值便是 variable的值;相反, 为NULL。

${variable:offset} 得到字符串数组的一个字符串函数(从variable字符串数组 数据库索引为 offset开始, offset值从0开始测算)

${variable:?word}  假如 variable被设置了一个不以空的值,那麼这一关系式的值便是 variable的值;不然,打印 word的值,退出。

${variable:offset:length} 得到variable的字符串(从 offset开始,长短为length)

以上便是Linux Kernel版本号后边有一个减号的缘故和去除的方法了,Linux Kernel版本号尽管仿佛对应用没什么危害,可是也是拥有多方面的缘故的,可以用原文中的方法来清除减号。

版权声明:
作者:暴风侠
链接:https://xitongmac.com/jiaocheng/25392.html
来源:暴风侠_一键激活Win10_Win7系统_Win8系统
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
< <上一篇
下一篇>>