Tag Archives: /lib64/libstdc++.so.6: version `CXXABI_1.3.8’ not found(

/lib64/libstdc++.so.6: version `CXXABI’1.3.8′ not found `36733;

Explain the function of static keyword and final keyword in Java in detail>>>

original address : https://blog.csdn.net/EI__ Nino/article/details/100086157

the ultimate war

Death Strike

1 ImportError: /lib64/libstdc++.so.6: version `CXXABI_1.3.8’ not found

Libstdc + +. So. 6 is too low, which leads to
see if your libstdc + +. So. 6 contains cxxabi_ 1.3.8

 1 # strings /usr/lib64/libstdc++.so.6 | grep CXXABI
 2 CXXABI_1.3
 3 CXXABI_1.3.1
 4 CXXABI_1.3.2
 5 CXXABI_1.3.3
 6 CXXABI_1.3.4
 7 CXXABI_1.3.5
 8 CXXABI_1.3.6
 9 CXXABI_1.3.7
10 CXXABI_TM_1

Sure enough, No
note that the GCC version is not necessarily too low. Use SCL (about SCL) https://linux.cn/article-6776-1.html )It’s useless to upgrade GCC. We can’t upgrade libstdc + +. So. 6 at all
so we need to upgrade libstdc + +. So. 6 and upgrade GCC by the way. If you only upgrade GCC (through SCL), it is invalid, because the version of GCC is higher, but its libstdc + + is the original libstdc + +. So. 6 of require

If you don’t believe it, look

1 # cat /opt/rh/devtoolset-7/root/usr/lib/gcc/x86_64-redhat-linux/7/libstdc++.so
2 
3 /* GNU ld script
4 Use the shared library, but some functions are only in
5 the static library, so try that secondarily. */
6 OUTPUT_FORMAT(elf64-x86-64)
7 INPUT ( /usr/lib64/libstdc++.so.6 -lstdc++_nonshared )

So does the egg hurt

The only solution is to recompile GCC

compile GCC

Install dependency library Yum install – y GMP devel mpfr devel libmpc devel

Download source code package ftp://ftp.gnu.org/gnu/gcc/gcc-9.2.0/

Decompress

configure

(note that this is very time-consuming. Adding – J4 means 4-thread compilation. If you have 4 cores, it will be full, leading to CPU full and service alarm. So it depends on the situation. I’m direct nohup make & amp; Then go home to sleep)

The orders are as follows

1 sudo yum install gmp-devel mpfr-devel libmpc-devel -y
2 cd download
3 wget ftp://ftp.gnu.org/gnu/gcc/gcc-9.2.0/gcc-9.2.0.tar.xz
4 xz -d gcc-9.2.0.tar.xz
5 tar -xf gcc-9.2.0.tar
6 cd gcc-9.2.0
7 ./configure --disable-multilib --enable-languages=c,c++ --prefix=$HOME/local
8 make -j4
9 make -j install

After installation, add the newly installed path to the environment variable

1 export LD_LIBRARY_PATH=$HOME/local/lib64

It can be found in ~ /. Bash_ Add path = $home/local/bin in the profile: $path
put the local in the front, in case there are bin with the same name at the same time, you can call the local bin file
to save LD_ LIBRARY_ Path = $home/local/lib64 is also added to. Base_ Profile, which can be used in the future
done.