node --version
node: /lib64/libstdc++.so.6: version `CXXABI_1.3.9' not found (required by node)
node: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by node)
node: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by node)
python2 升级到ypthon3后
File "/usr/libexec/urlgrabber-ext-down", line 28 except OSError, e: ^^^^^^^^^^ Syntax
问题原因
原因为升级python后新建了软连接指向了新版本,除非同时升级yum不然无法使用。需要手动更改报错文件指向python2后即可解决。
vim /usr/libexec/urlgrabber-ext-down
#!/usr/bin/python ====> #!/usr/bin/python2.7.5
wq
yum install -y xxxx
=====================================================================
场景
cent os7服务器使用nvm安装的node之后,只要使用npm或者node,均会出现以下问题
[root@172 ~]# npm -v node: /lib64/libm.so.6: version `GLIBC_2.27' not found (required by node) node: /lib64/libc.so.6: version `GLIBC_2.25' not found (required by node) node: /lib64/libc.so.6: version `GLIBC_2.28' not found (required by node) node: /lib64/libstdc++.so.6: version `CXXABI_1.3.9' not found (required by node) node: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by node) node: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by node)
原因
查看系统内安装的glibc版本
然后再根据分析可得知 新版的node v18开始 都需要GLIBC_2.27支持,可是目前系统内却没有那么高的版本
[root@172 glibc-2.28]# strings /lib64/libc.so.6 |grep GLIBC_ GLIBC_2.2.5 ... GLIBC_2.17 ....
解决办法
更新glibc
根据提示 安装所需要的glibc-2.28
wget http://ftp.gnu.org/gnu/glibc/glibc-2.28.tar.gz tar xf glibc-2.28.tar.gz cd glibc-2.28/ && mkdir build && cd build ../configure --prefix=/usr --disable-profile --enable-add-ons --with-headers=/usr/include --with-binutils=/usr/bin
可能出现的错误
上步更新glibc 可能会发生错误。
如果没有错误 下边这一步 不用看。
make问题
configure: error: *** These critical programs are missing or too old: make bison compiler *** Check the INSTALL file for required versions.
解决办法:升级gcc与make
# 升级GCC(默认为4 升级为8)yum install -y centos-release-scl yum install -y devtoolset-8-gcc* mv /usr/bin/gcc /usr/bin/gcc-4.8.5 ln -s /opt/rh/devtoolset-8/root/bin/gcc /usr/bin/gcc mv /usr/bin/g++ /usr/bin/g++-4.8.5 ln -s /opt/rh/devtoolset-8/root/bin/g++ /usr/bin/g++# 升级 make(默认为3 升级为4)wget http://ftp.gnu.org/gnu/make/make-4.3.tar.gz tar -xzvf make-4.3.tar.gz && cd make-4.3/ ./configure --prefix=/usr/local/make make && make install cd /usr/bin/ && mv make make.bak ln -sv /usr/local/make/bin/make /usr/bin/make
这时 所有的问题 都已经解决完毕 再重新执行上一步 更新glibc即可
cd /root/glibc-2.28/build ../configure --prefix=/usr --disable-profile --enable-add-ons --with-headers=/usr/include --with-binutils=/usr/bin
我的依旧报错:bison太老旧
configure: error: *** These critical programs are missing or too old: bison *** Check the INSTALL file for required versions.
看看我的bison版本多少
[root@172 ~]# bison -v -bash: bison: 未找到命令
bison问题
yum install -y bison
这时 所有的问题 真的真的都已经解决完毕 再重新执行上一步 更新glibc即可
cd /root/glibc-2.28/build ../configure --prefix=/usr --disable-profile --enable-add-ons --with-headers=/usr/include --with-binutils=/usr/bin
继续更新glibc
make 和 make install在linux中就是安装软件的意思 简单这么理解就好。
这个过程较长,大约半小时左右,建议打一局游戏就好了。
make && make install `` 验证下 是不是好了 ```shell npm -v
推荐本站淘宝优惠价购买喜欢的宝贝:
本文链接:https://hqyman.cn/post/5364.html 非本站原创文章欢迎转载,原创文章需保留本站地址!
休息一下~~