linux 错误代码:libm.so.6:找不到'GLIBC_2.29'版本,NodeJS

i2loujxw  于 2022-11-22  发布在  Linux
关注(0)|答案(1)|浏览(1557)

我已经用C++为NodeJS编写了一个SDL2的本地库 Package 程序,它处于工作状态,但现在我已经从NodeJS 10.19.0升级到15.0.1 LTS,并遇到了以下错误:

Error: /snap/core18/current/lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.29' not found (required by /lib/x86_64-linux-gnu/libSDL2-2.0.so.0)
    at Object.Module._extensions..node (node:internal/modules/cjs/loader:1142:18)
    at Module.load (node:internal/modules/cjs/loader:948:32)
    at Function.Module._load (node:internal/modules/cjs/loader:789:14)
    at Module.require (node:internal/modules/cjs/loader:972:19)
    at require (node:internal/modules/cjs/helpers:88:18)
    at Object.<anonymous> (/usr/lib/lotus/native/sdl2/index.js:1:13)
    at Module._compile (node:internal/modules/cjs/loader:1083:30)
    at Object.Module._extensions..js (node:internal/modules/cjs/loader:1112:10)
    at Module.load (node:internal/modules/cjs/loader:948:32)
    at Function.Module._load (node:internal/modules/cjs/loader:789:14) {
  code: 'ERR_DLOPEN_FAILED'
}

我试着按照一些在线指南,如this等,没有任何效果。我怀疑这不是一个依赖性问题,因为完全相同的程序在10.19.0下运行。虽然该版本是通过apt和15.0.1与snap安装的。我不完全相信这是问题的原因,但。因为15.0.1可与其他本地库(如依赖于Qt和Electron的NodeGUI)配合使用。
我对Linux不够熟悉,无法自己调试这个问题,所以如果有任何可能解决这个问题的建议,我将非常感谢。

**编辑:**我已经设法弄清楚了,如果NodeJS是通过APT安装的,那么同样的程序在15.0.1下也能工作。无论哪种方式,这都是令人沮丧的,我非常感谢在使用snap版本方面的一些帮助。
**编辑2:**重新安装整个系统没有任何作用。

i1icjdpr

i1icjdpr1#

有点晚了,但我已经解决了这个问题:在我的系统上,snap包会导致LibCs出现问题,尤其是NodeJS安装。由于我使用的是较低级别的系统资源,Snap会给我带来障碍。
解决方案是使用APT的直接节点安装。

相关问题