一、明确问题
我们可以看到,宝塔一开始是直接提示操作版本过低,请尝试更换高版本系统。这时候可能很多新手小白就会直接重装系统,但实际上我们只需要手动更新一下我们的Linux基层库就可以解决了
手动安装node高版本报错:
node: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.20' 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.21' not found (required by node)
node: /lib64/libm.so.6: version `GLIBC_2.27' not found (required by node)
node: /lib64/libc.so.6: version `GLIBC_2.28' not found (required by node)
node: /lib64/libc.so.6: version `GLIBC_2.25' not found (required by node)
二、教程开始
首先登录你的机子
1.升级GCC版本
1.1 下载gcc更新包
wget https://mirrors.aliyun.com/gnu/gcc/gcc-9.3.0/gcc-9.3.0.tar.gz
1.2 复制下载文件到opt目录
cp gcc-9.3.0.tar.gz /opt
1.3 跳转到opt目录
cd /opt
1.4 解压文件
tar -zxf gcc-9.3.0.tar.gz
1.5 跳转到解压好的文件夹内
cd gcc-9.3.0/
1.6
./contrib/download_prerequisites
1.7
cat /proc/cpuinfo| grep "processor"| wc -l
1.8 创建编译文件夹
mkdir build
1.9 跳转到编译文件夹
cd build
1.10 配置准备软件包 形成makefiles
../configure --enable-checking=release --enable-language=c,c++ --disable-multilib --prefix=/usr
1.11 开始编译
比如说你的CPU是2核,那建议你输入make -j2
make -j8
对了,在使用 cmake 控制编译时,仅仅执行 make 指令效率较低,使用 make -j 后面跟一个数字,比如 make -j4 make -j6 make -j14 等。 含义是 让 make 最多允许 n 个编译命令同时执行,这样可以更有效的利用 CPU 资源。 假设我们的系统是 CPU 是12核,在不影响其他工作的情况下,我们可以 make -j12
1.12 安装编译好的文件
make install
然后确认一下是否更新成功,命令输入gcc -v,如果返回 9.3.0就可以了,如下图
2.升级make版本
2.1 回到根目录
cd ~
2.2 下载源码包
wget https://mirrors.aliyun.com/gnu/make/make-4.3.tar.gz
2.3 复制文件到opt目录
cp make-4.3.tar.gz /opt
2.4 跳转到opt目录
cd /opt/
2.5 解压
tar -zxf make-4.3.tar.gz
2.6 跳转到解压后的目录
cd make-4.3/
2.7 创建编译文件夹
mkdir build
2.8 跳转到编译文件夹
cd build
2.9 编译安装
../configure --prefix=/usr && make && make install
执行完后,输入make -v,查看是否更新到了make4.3版本,如下图
3.升级glibc
3.1 跳转到opt目录
cd /opt
3.2 下载源码包
wget https://mirrors.aliyun.com/gnu/glibc/glibc-2.31.tar.gz
3.3 解压文件
tar -zxf glibc-2.31.tar.gz
3.4 跳转到解压的目录
cd glibc-2.31/
3.5
cat INSTALL | grep -E "newer|later"
3.6 创建编译文件夹
mkdir build
3.7 跳转到编译文件夹
cd build
3.8 准备编译
../configure --prefix=/usr --disable-profile --enable-add-ons --with-headers=/usr/include --with-binutils=/usr/bin --disable-sanity-checks --disable-werror
3.9 安装python3(必须安装 否则编译报错)
yum install python3
3.10 编译
make -j8
对了,在使用 cmake 控制编译时,仅仅执行 make 指令效率较低,使用 make -j 后面跟一个数字,比如 make -j4 make -j6 make -j14 等。 含义是 让 make 最多允许 n 个编译命令同时执行,这样可以更有效的利用 CPU 资源。 假设我们的系统是 CPU 是12核,在不影响其他工作的情况下,我们可以 make -j12
3.11 安装编译好的文件
make install
3.12 覆盖系统软件语言文件(大胆放心输入,只要命令不中断)
make localedata/install-locales
确认是否更新完成
1.输入 strings /lib64/libc.so.6 | grep GLIBC 正常的话输出下图,重点是只要出现2.30即可
2.输入 ll /lib64/libc.so* 正常输出下图
4.升级gcc动态库 libstdc++.so.6.0.26
4.1 回到根目录
cd ~
4.2 下载源码包
wget https://cdn.frostbelt.cn/software/libstdc%2B%2B.so.6.0.26
4.3
ll /usr/lib64/libstdc++.so.6
4.4
mv libstdc++.so.6.0.26 /usr/lib64/
4.5 跳转到这个目录
cd /usr/lib64/
4.6 创建链接
ln -snf ./libstdc++.so.6.0.26 libstdc++.so.6
执行 strings /usr/lib64/libstdc++.so.6 | grep ^GLIBCXX_
查看是否更新,正常输出下图
三、奇迹出现 教程结束
可以安装高版本nodejs了哦
暂无评论内容