1.報錯
error: /lib64/libstdc++.so.6: version `CXXABI_1.3.9' not found (required by /opt/apps/venus-backend/node_modules/canvas/build/Release/canvas.node)
2.解決方案
升級gcc動態庫
3.解決步驟
1.查看當前動態庫版本 strings /usr/lib64/libstdc++.so.6 | grep CXXABI CXXABI_1.3 CXXABI_1.3.1 CXXABI_1.3.2 CXXABI_1.3.3 CXXABI_1.3.4 CXXABI_1.3.5 CXXABI_1.3.6 CXXABI_1.3.7 CXXABI_TM_1 發現最高版本只有1.3.7,沒有1.3.9的。 2.下載最新動態庫並編譯 wget http://ftp.gnu.org/gnu/glibc/glibc-2.34.tar.xz tar -xvf glibc-2.34.tar.xz mkdir glibc-build #不能在glibc當前目錄下運行configure,否則會報錯"configure: error: you must configure in a separate build directory",需要新建編譯目錄 mkdir glibc-install cd glibc-build ../glibc-2.34/configure --prefix=/root/glibc-install make &&make install cp /root/glibc-install/lib/libc-2.34.so cd /usr/lib64/ ll libstdc++.so.6 #查看當前系統版本,用於恢復 lrwxrwxrwx. 1 root root 19 Jan 28 2021 libstdc++.so.6 -> libstdc++.so.6.0.19 rm -f libstdc++.so.6 && ln -sv libc-2.34.so libstdc++.so.6 源碼包下載地址: http://mirrors.ustc.edu.cn/gnu/libc/ http://ftp.gnu.org/gnu/glibc/ https://centos.pkgs.org/7/centos-x86_64/libstdc++-4.8.5-44.el7.x86_64.rpm.html 參考地址:https://blog.csdn.net/u012927281/article/details/51704855
4.使用現有
鏈接:https://pan.baidu.com/s/1vvGFYDG9GkrFNqf2FaUdoA 提取碼:4mul 直接替換即可
5.遇到的問題
make的版本低不能使用,默認帶的是 3.82 不滿足 make 4.0 的最低要求
cd /tmp wget http://mirrors.ustc.edu.cn/gnu/make/make-4.0.tar.gz tar xf make-4.0.tar.gz cd make-4.0/ ./configure make make install make -v # 此時的 make 還是3.82 與環境變量有關系 /usr/local/bin/make -v # 這是我們剛安裝的 make 它的版本是4.0 whereis make # 找一下都有哪些 make cd /usr/bin/ mv make make.bak # 把默認的 make 改名 ln -sv /usr/local/bin/make /usr/bin/make # 建立一個軟連接 make -v # 查看一下大功告成