# root @ centos7-build in ~/node-v18.3.0-linux-x64/bin [9:20:05]
$ ./node
./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)
最近有一项工作是让nodejs 18 继续在centos7中运行,由于官方工具链已经完全放弃centos7,故需要编译环境。 好在目前编译的成本并不高,其实只要重新编译就可以,追溯了下是因为v8中的一个修改导致,但v8其实并没有放弃低版本libc
v8后面也进行了修复 主要是
memfd_create
需要 glibc 2.27 https://github.com/v8/v8/commit/4e81f2584ee15cd6300e180585c26f16616210f3那么在 Proxmox7 使用 centos7 LXC容器 需要更新centos7中的systemd,也有backports的版本
进入容器
pct enter <CTID>
退出容器 之后重启容器 一切正常
pct stop <CTID>