Amazon Linux 2023升级Node至v18后安装npm遇GLIBC版本问题求助
解决Amazon Linux 2023升级Node.js 18+时GLIBC版本错误问题
问题原因
你系统的GLIBC版本(2.34)实际远高于Node.js 18要求的2.25/2.27/2.28,错误核心是nvm默认下载的Node.js预编译包适配Debian/Ubuntu类系统——这类系统的GLIBC存放在/lib/x86_64-linux-gnu路径;而Amazon Linux 2023属于RHEL衍生系统,GLIBC路径为/lib64,导致Node.js无法定位到正确的库文件。
解决方案
方案一:使用Amazon Linux官方仓库安装(推荐)
官方仓库的Node.js包完全适配系统环境,不会出现路径兼容问题:
- 卸载nvm中所有Node.js版本:
nvm uninstall --all - 启用Node.js 18的系统模块:
sudo dnf module enable nodejs:18 - 安装Node.js和npm:
sudo dnf install nodejs - 验证版本并升级npm:
node -v npm -v npm i -g npm@10.2.4
方案二:修复nvm安装的Node.js适配问题
如果需要继续用nvm管理版本,可通过以下方式解决:
方法A:从源码编译Node.js
编译过程会自动适配系统的库路径:
- 卸载有问题的Node.js版本:
nvm uninstall 18.13.0 - 安装编译依赖:
sudo dnf install gcc-c++ make python3 - 用nvm编译安装指定版本:
nvm install 18.13.0 --compile - 验证并升级npm:
node -v npm i -g npm@10.2.4
方法B:手动安装适配RHEL系的预编译包
直接下载适配Linux x64 glibc环境的预编译包,避免路径不匹配:
- 卸载当前版本:
nvm uninstall 18.13.0 - 下载Node.js 18.13.0的Linux x64 glibc包:
wget https://nodejs.org/dist/v18.13.0/node-v18.13.0-linux-x64.tar.xz - 使用nvm安装本地包:
nvm install 18.13.0 --local ./node-v18.13.0-linux-x64.tar.xz - 验证并升级npm:
node -v npm i -g npm@10.2.4
内容的提问来源于stack exchange,提问作者Raj
相关产品推荐
相关产品推荐

