由于官方默认安装的是最新版本的pnpm,但在主流的服务器上nodejs无法与之匹配,C编译器也无法匹配,导致pnpm install时产生很多无法预料的错误
ERROR Command failed with exit code 1: /root/.nvm/versions/node/v18.12.0/bin/node --version
/root/.nvm/versions/node/v18.12.0/bin/node: /lib64/libm.so.6: version `GLIBC_2.27' not found (required by /root/.nvm/versions/node/v18.12.0/bin/node)
/root/.nvm/versions/node/v18.12.0/bin/node: /lib64/libc.so.6: version `GLIBC_2.25' not found (required by /root/.nvm/versions/node/v18.12.0/bin/node)
/root/.nvm/versions/node/v18.12.0/bin/node: /lib64/libc.so.6: version `GLIBC_2.28' not found (required by /root/.nvm/versions/node/v18.12.0/bin/node)
/root/.nvm/versions/node/v18.12.0/bin/node: /lib64/libstdc++.so.6: version `CXXABI_1.3.9' not found (required by /root/.nvm/versions/node/v18.12.0/bin/node)
/root/.nvm/versions/node/v18.12.0/bin/node: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by /root/.nvm/versions/node/v18.12.0/bin/node)
/root/.nvm/versions/node/v18.12.0/bin/node: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by /root/.nvm/versions/node/v18.12.0/bin/node)
出现这个错误时,很多人建议安装新的GLIBC编译器,但是实际操作过程中非常麻烦
因此需要使用旧版本的pnpm,官方安装旧版本的方法:https://pnpm.io/installation#installing-a-specific-version
curl -fsSL https://get.pnpm.io/install.sh | env PNPM_VERSION=<version> sh -
但是旧版本哪里找呢?请查看:https://github.com/pnpm/pnpm,在main分支中下拉,点Tags标签,就可以看到可以安装的版本,选择一个来安装就可以了,注意:要删除掉最新的版本后再安装旧版本
rm -rf $PNPM_HOME
安装新版本,注意啊,CentOS7大概安装 7.26.2 这个版本基本上可以正常使用了
curl -fsSL https://get.pnpm.io/install.sh | env PNPM_VERSION=7.26.2 sh -