llvm
https://github.com/llvm/llvm-project/releases/tag/llvmorg-16.0.6
aarch64下载地址
故障处理记录
[root@localhost speccpu2017]# /opt/clang+llvm-16.0.6-aarch64-linux-gnu/bin/clang
/opt/clang+llvm-16.0.6-aarch64-linux-gnu/bin/clang: /lib64/libtinfo.so.6: no version information available (required by /opt/clang+llvm-16.0.6-aarch64-linux-gnu/bin/clang)
/opt/clang+llvm-16.0.6-aarch64-linux-gnu/bin/clang: /lib64/libm.so.6: version `GLIBC_2.29' not found (required by /opt/clang+llvm-16.0.6-aarch64-linux-gnu/bin/clang)
/opt/clang+llvm-16.0.6-aarch64-linux-gnu/bin/clang: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by /opt/clang+llvm-16.0.6-aarch64-linux-gnu/bin/clang)
/lib64/libtinfo.so.6: no version information available
`GLIBC_2.29' not found
http://mirrors.ustc.edu.cn/gnu/libc/glibc-2.29.tar.gz
下载编译glibc-2.29,利用自带的gcc version 7.3.0 (GCC)
tar -xf glibc-2.29.tar.gz
cd glibc-2.29
mkdir build
cd build/
../configure --prefix=/usr
make -j64
makedb.c:849:3: 错误:已弃用‘security_context_t’ [-Werror=deprecated-declarations]
security_context_t ctx;
^~~~~~~~~~~~~~~~~~
makedb.c:863:3: 错误:‘matchpathcon’ is deprecated: Use selabel_lookup instead [-Werror=deprecated-declarations]
if (matchpathcon (outname, S_IFREG | mode, &ctx) == 0 && ctx != NULL)
^~
-Werror=deprecated-declarations
[root@localhost build]# export CFLAGS="-Wno-error=deprecated-declarations -O3"
[root@localhost build]# ../configure --prefix=/usr
[root@localhost build]# make -j64
[root@localhost build]# make install
make install中途报错
/usr/bin/perl: /lib64/libcrypt.so.1: version `XCRYPT_2.0' not found (required by /lib64/libperl.so.5.28)
make[1]: *** [Makefile:111: install] Error 1
make[1]: Leaving directory '/openeuler00-home/glibc-2.29'
make: *** [Makefile:12:install] 错误 2
[root@localhost build]# strings /usr/lib64/libc-2.29.so | grep GLIBC_2.29
GLIBC_2.29
GLIBC_2.29
[root@localhost build]# ll /usr/lib64/libc.so*
-rw-r--r-- 1 root root 259 8-р сар 7 10:13 /usr/lib64/libc.so
lrwxrwxrwx 1 root root 12 8-р сар 7 10:15 /usr/lib64/libc.so.6 -> libc-2.29.so
[root@localhost build]# /opt/clang+llvm-16.0.6-aarch64-linux-gnu/bin/clang
/opt/clang+llvm-16.0.6-aarch64-linux-gnu/bin/clang: /lib64/libtinfo.so.6: no version information available (required by /opt/clang+llvm-16.0.6-aarch64-linux-gnu/bin/clang)
/opt/clang+llvm-16.0.6-aarch64-linux-gnu/bin/clang: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by /opt/clang+llvm-16.0.6-aarch64-linux-gnu/bin/clang)
升级基础库风险较大,牵扯到一系列上层库、应用
clang问题已解决,其他的暂时不管了。
`GLIBCXX_3.4.26' not found
gcc与libstdc++版本关系:
https://www.cnblogs.com/freelancy/p/17012054.html
https://gcc.gnu.org/onlinedocs/libstdc++/manual/abi.html
得到对照关系
GCC 9.1.0 | GLIBCXX_3.4.26 | CXXABI_1.3.12 | libstdc++.so.6.0.26 |
获取源码,编译libstdc++ 3.4.26
https://mirrors.ustc.edu.cn/gnu/gcc/gcc-9.1.0/gcc-9.1.0.tar.gz
kex_exchange_identification: read: Connection reset by peer
Connection reset
由于升级的glibc导致ssh故障,放弃openEuler 20.03 LTS SP3 此方案。
灾后自救
当前状态:
ssh无法登录
SOL控制台或者虚拟虚拟化均表现为,输入用户名,回车不会提示输入密码,无法登录。
只能在之前已经打开ssh的终端上面执行:
[root@localhost cpu2017-llvm]# rpm -qa | grep glibc
glibc-devel-2.28-84.oe1.aarch64
glibc-common-2.28-84.oe1.aarch64
glibc-2.28-84.oe1.aarch64
[root@localhost cpu2017-llvm]# yum reinstall glibc-devel glibc-common glibc
日志
[root@localhost cpu2017-llvm]# yum reinstall glibc-devel glibc-common glibc
OS 3.7 MB/s | 3.8 kB 00:00
Dependencies resolved.
=============================================================================================================================================================================
Package Architecture Version Repository Size
=============================================================================================================================================================================
Reinstalling:
glibc aarch64 2.28-84.oe1 OS 3.0 M
glibc-common aarch64 2.28-84.oe1 OS 26 M
glibc-devel aarch64 2.28-84.oe1 OS 2.5 M
Transaction Summary
=============================================================================================================================================================================
Total size: 32 M
Installed size: 246 M
Is this ok [y/N]: y
Downloading Packages:
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
Preparing : 1/1
Reinstalling : glibc-common-2.28-84.oe1.aarch64 1/6
Running scriptlet: glibc-2.28-84.oe1.aarch64 2/6
Reinstalling : glibc-2.28-84.oe1.aarch64 2/6
Running scriptlet: glibc-2.28-84.oe1.aarch64 2/6
/usr/sbin/glibc_post_upgrade: While trying to execute /usr/sbin/iconvconfig child terminated abnormally
warning: %post(glibc-2.28-84.oe1.aarch64) scriptlet failed, exit status 115
Error in POSTIN scriptlet in rpm package glibc
warning: %triggerin(cronie-1.5.5-3.oe1.aarch64) scriptlet failed, signal 11
Error in <unknown> scriptlet in rpm package glibc
Running scriptlet: glibc-devel-2.28-84.oe1.aarch64 3/6
error: %prein(glibc-devel-2.28-84.oe1.aarch64) scriptlet failed, signal 11
Error in PREIN scriptlet in rpm package glibc-devel
Cleanup : glibc-2.28-84.oe1.aarch64 4/6
error: glibc-devel-2.28-84.oe1.aarch64: install failed
error: glibc-devel-2.28-84.oe1.aarch64: erase skipped
Cleanup : glibc-common-2.28-84.oe1.aarch64 5/6
Running scriptlet: glibc-common-2.28-84.oe1.aarch64 5/6
warning: %triggerpostun(glibc-common-2.28-84.oe1.aarch64) scriptlet failed, signal 11
Error in <unknown> scriptlet in rpm package glibc-common
warning: %triggerin(glibc-common-2.28-84.oe1.aarch64) scriptlet failed, signal 11
Error in <unknown> scriptlet in rpm package glibc-common
Verifying : glibc-2.28-84.oe1.aarch64 1/6
Verifying : glibc-2.28-84.oe1.aarch64 2/6
Verifying : glibc-common-2.28-84.oe1.aarch64 3/6
Verifying : glibc-common-2.28-84.oe1.aarch64 4/6
Verifying : glibc-devel-2.28-84.oe1.aarch64 5/6
Verifying : glibc-devel-2.28-84.oe1.aarch64 6/6
Reinstalled:
glibc-2.28-84.oe1.aarch64 glibc-common-2.28-84.oe1.aarch64
Failed:
glibc-devel-2.28-84.oe1.aarch64 glibc-devel-2.28-84.oe1.aarch64
Error: Transaction failed
[root@localhost cpu2017-llvm]# yum reinstall glibc
Segmentation fault (core dumped)
[root@localhost cpu2017-llvm]# ls
Segmentation fault (core dumped)
[root@localhost cpu2017-llvm]#
哦豁 - -#