gpt4 book ai didi

linux - Glibc-2.22 make(无限循环)错误 [LFS 7.8 - 6.9]

转载 作者:太空狗 更新时间:2023-10-29 11:21:40 26 4
gpt4 key购买 nike

当我尝试通过第 6.9 章 - Linux from Scratch 7.8 编译 glibc 包时出现此错误。当 make 运行时,它会进入一个无限循环,重复以下内容:

/usr/bin/install -c -m 644 ../include/limits.h /usr/include/limits.h
gawk -f ../scripts/gen-as-const.awk ../sysdeps/x86_64/locale-defines.sym \
| gcc -S -o /sources/glibc-2.22/build/locale-defines.hT3 -std=gnu99 -fgnu89-inline -O2 -Wall -Werror -Wno-error=undef -Wundef -Wwrite-strings -fmerge-all-constants -frounding-math -g -Wstrict-prototypes -ftls-model=initial-exec -I../include -I/sources/glibc-2.22/build/string -I/sources/glibc-2.22/build -I../sysdeps/unix/sysv/linux/x86_64/64 -I../sysdeps/unix/sysv/linux/x86_64 -I../sysdeps/unix/sysv/linux/x86 -I../sysdeps/unix/sysv/linux/wordsize-64 -I../sysdeps/x86_64/nptl -I../sysdeps/unix/sysv/linux/include -I../sysdeps/unix/sysv/linux -I../sysdeps/nptl -I../sysdeps/pthread -I../sysdeps/gnu -I../sysdeps/unix/inet -I../sysdeps/unix/sysv -I../sysdeps/unix/x86_64 -I../sysdeps/unix -I../sysdeps/posix -I../sysdeps/x86_64/64 -I../sysdeps/x86_64/fpu/multiarch -I../sysdeps/x86_64/fpu -I../sysdeps/x86/fpu/include -I../sysdeps/x86/fpu -I../sysdeps/x86_64/multiarch -I../sysdeps/x86_64 -I../sysdeps/x86 -I../sysdeps/ieee754/ldbl-96 -I../sysdeps/ieee754/dbl-64/wordsize-64 -I../sysdeps/ieee754/dbl-64 -I../sysdeps/ieee754/flt-32 -I../sysdeps/wordsize-64 -I../sysdeps/ieee754 -I../sysdeps/generic -I.. -I../libio -I. -D_LIBC_REENTRANT -include /sources/glibc-2.22/build/libc-modules.h -DMODULE_NAME=libc -include ../include/libc-symbols.h -x c - \
-MD -MP -MF /sources/glibc-2.22/build/locale-defines.h.dT -MT '/sources/glibc-2.22/build/locale-defines.h.d /sources/glibc-2.22/build/locale-defines.h'
sed -n 's/^.*@@@name@@@\([^@]*\)@@@value@@@[^0-9Xxa-fA-F-]*\([0-9Xxa-fA-F-][0-9Xxa-fA-F-]*\).*@@@end@@@.*$/#define \1 \2/p' \
/sources/glibc-2.22/build/locale-defines.hT3 > /sources/glibc-2.22/build/locale-defines.hT
rm -f /sources/glibc-2.22/build/locale-defines.hT3
sed -e 's@ /sources/glibc-2\.22/build/@ $(common-objpfx)@g' -e 's@^/sources/glibc-2\.22/build/@$(common-objpfx)@g' -e 's@ *\.\.\/\([^ \]*\)@ $(..)\1@g' -e 's@^\.\.\/\([^ \]*\)@$(..)\1@g' \
/sources/glibc-2.22/build/locale-defines.h.dT > /sources/glibc-2.22/build/locale-defines.h.dT2
rm -f /sources/glibc-2.22/build/locale-defines.h.dT
mv -f /sources/glibc-2.22/build/locale-defines.h.dT2 /sources/glibc-2.22/build/locale-defines.h.d
mv -f /sources/glibc-2.22/build/locale-defines.hT /sources/glibc-2.22/build/locale-defines.h

有人知道如何解决这个问题吗?有人告诉我,当构建系统时钟设置不正确时,这是一个常见的错误。然而,事实并非如此。

最佳答案

我不知道循环的原因,但你可以通过运行来进一步诊断它:

make -d |& tee log
less log

这将非常冗长,但埋在其中的行应该是说 xxx is newer than locale-defines.h;必须重新制作 locale-defines.h。您也许可以使用它来追踪循环。

还有 remake程序可以提供更多用户友好的调试输出。许多发行版已经包含了它。

关于损坏的时钟设置的注意事项:如果您的时钟在某个时间点损坏,现在简单地修复它并不意味着该时间点之后的所有 make 调用都可以正常工作。您通常需要完全删除源/构建目录并从头开始重新启动构建过程。

关于linux - Glibc-2.22 make(无限循环)错误 [LFS 7.8 - 6.9],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35834281/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com