./../node/bin/node: /lib64/libc.so.6: version `GLIBC_2.16' not found (required by ./../node/bin/node)
./../node/bin/node: /lib64/libc.so.6: version `GLIBC_2.17' not found (required by ./../node/bin/node)
./../node/bin/node: /lib64/libc.so.6: version `GLIBC_2.14' not found (required by ./../node/bin/node)
./../node/bin/node: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.14' not found (required by ./../node/bin/node)
./../node/bin/node: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.18' not found (required by ./../node/bin/node)
./../node/bin/node: /usr/lib64/libstdc++.so.6: version `CXXABI_1.3.5' not found (required by ./../node/bin/node)
./../node/bin/node: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.15' not found (required by ./../node/bin/node)
公司要安装kibana时,一开始没注意是centos6.x的版本,安装kibana一波操作完之后启动竟然报错,查看后发现是少了一些库。以下是解决方法:
【一:解决libc.so.6】
下载: https://ftp.gnu.org/gnu/glibc/glibc-2.17.tar.gz
tar -zxvf glibc-2.17.tar.gz
cd glibc-2.17
mkdir build;
cd build
../configure --prefix=/usr --disable-profile --enable-add-ons --with-headers=/usr/include --with-binutils=/usr/bin
make -j 8
make install
# 查看是否安装成功
strings /lib64/libc.so.6 | grep GLIBC
【二、解决libstdc++.so.6】
解决libstdc++.so.6有两种方案,第一种方案执行比较慢,建议直接使用方案二。
方案一:下载 http://ftp.tsukuba.wide.ad.jp/software/gcc/releases/
tar -zxvf gcc-8.3.0.tar.gz
cd gcc-8.3.0/
chmod +x ./contrib/download_prerequisites
./contrib/download_prerequisites
mkdir build
cd build
chmod +x ../configure
../configure --enable-checking=release --enable-languages=c,c++ --disable-multilib
chmod +x ../move-if-change
chmod +x ../libgcc/*.sh
make && make install
cp /usr/local/lib64/libstdc++.so.6.0.25 /usr/lib64
cd /usr/lib64
rm -rf libstdc++.so.6
ln -s libstdc++.so.6.0.25 libstdc++.so.6
# 检测动态库
strings /usr/lib64/libstdc++.so.6 | grep GLIBC
node -v
方案二:挪用ElasticSearch自带的libstdc++.so动态库
首先查找libstdc++.so路径
find / -name libstdc++.so.6*
我们将系统/usr/lib64/libstdc++.so.6
先进行备份
mv /usr/lib64/libstdc++.so.6.0.13 /usr/lib64/libstdc++.so.6.0.13.bak
随后替换成elasticsearch的libstdc++.so
动态库
mv /apps/elasticsearch/elasticsearch-7.12.0/modules/x-pack-ml/platform/linux-x86_64/lib/libstdc++.so.6 /usr/lib64/libstdc++.so.6
替换完毕后,查看依赖库版本:
strings /usr/lib64/libstdc++.so.6 | grep GLIBC
发现版已更新
重新启动kibana即可