错误:/lib/x86_64-linux-gnu/libm.so.6:版本“ GLIBC_2.27”

joe.kovalski:

我正在为Mac(10.9+)和Linux(Ubuntu 18)构建我的节点模块(使用N-API)。当我将模块部署到远程计算机(到Heroku)时,我得到:

Error: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.27' not found (required by /opt/atlassian/pipelines/agent/build/addons/Release-linux/module.node)
    at Object.Module._extensions..node (internal/modules/cjs/loader.js:717:18)
    at Module.load (internal/modules/cjs/loader.js:598:32)
    at tryModuleLoad (internal/modules/cjs/loader.js:537:12)
    (...)

ldd --version在两台机器上运行

~ $ ldd --version
ldd (Ubuntu GLIBC 2.27-3ubuntu1) 2.27

和:

~ $ ls /lib/x86_64-linux-gnu/
libm.so.6 (...)

另外,我不确定为什么要链接到libm,因为我没有#include <math.h>在代码中使用(编译器是libm隐式添加的?)。

任何帮助,将不胜感激。

弗洛里安·韦默(Florian Weimer):

您需要部署到与构建环境兼容的操作系统中。通常,这意味着要使用相同的发行版。在某些情况下,也可以在同一发行版的较新版本上进行部署。

您的Ubuntu版本使用glibc 2.27。您的部署目标使用了较早的版本,大概是Heroku-16Cedar-14,因为您说过要在Heroku上进行部署。您必须在匹配的构建环境中重新构建软件(例如,使用pbuilder或使用虚拟机),或者将其部署到与您的Ubuntu版本兼容的产品(大概是Heroku-18)中。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

UnsatisfiedLinkError:/tmp/snappy-1.1.4-libsnappyjava.so错误加载共享库LD-Linux的x86-64.so.2:没有这样的文件或目录

Linux上的matlab无法绘制任何内容(无法加载libstdc ++。so.6:找不到版本“ CXXABI_1.3.8”)

/usr/lib/x86_64-linux-gnu/libstdc++.so.6:找不到版本CXXABI_1.3.8'

/lib/x86_64-linux-gnu/libz.so.1:未找到版本“ ZLIB_1.2.9”

/usr/lib/x86_64-linux-gnu/libQt5Core.so.5:未找到版本“ Qt_5.7”(emulator64-x86必需)

/lib64/libc.so.6:找不到版本“ GLIBC_2.14”

TwitteR软件包:/usr/lib/x86_64-linux-gnu/libcurl.so.4:找不到版本'CURL_OPENSSL_3'

从源代码:libstdc ++。so.6构建gcc 4.8.3时出错:找不到版本“ CXXABI_1.3.8”(由/usr/lib/x86_64-linux-gnu/libicuuc.so.55要求)

在fedora 27中安装gcc和g ++版本<6

找不到/lib64/ld-linux-x86-64.so.2

ImportError:/lib64/libc.so.6:在RHEL 6.9(圣地亚哥)上的导入张量流中找不到版本'GLIBC_2.17'

ImageMagick:OSError:/lib/libc.so.6:找不到版本'GLIBC_2.XX'

Ubuntu 16.04 LTS中的Python给出错误/lib/x86_64-linux-gnu/libc.so.6版本'GLIBC_2.25'

(pam_ldap.so)/lib/libc.so.6:找不到版本“ GLIBC_2.28”

libc.so.6:找不到版本“ GLIBC_2.16”

升级严重错误:libc.so.6:未找到版本“ GLIBC_2.17”

如何修复“ /lib/x86_64-linux-gnu/libc.so.6:找不到版本'GLIBC_2.14'”?

如何检查ld-linux.so.2的版本?

无法打开lib'/usr/lib/x86_64-linux-gnu/odbc/pgoe27.so':找不到文件

覆盖默认的/lib64/ld-linux-x86-64.so.2以调用可执行文件

在使用patchelf 0.6和0.8的ld-linux-x86-64.so.2中设置RUNPATH之后,无法chroot bash

几乎没有命令有效-重定位错误:libc.so.6中未定义的符号__getrlimit,版本GLIBC_PRIVATE

/lib64/libc.so.6:升级到glibc 2.15时找不到版本“ GLIBC_2.14”

ImportError:/lib/libc.so.6:找不到版本“ GLIBC_2.14”(/ usr / lib / libpq.so.5必需)

SDK 工具版本 27 的 Gradle 构建错误

为什么 ld-linux-x86-64.so.2 链接到意外位置?

-jailshell: d-linux-x86-64.so.2: 错误的 ELF 解释器: 没有那个文件或目录

无法在 CentOS8 容器上打开“/lib64/ld-linux-x86-64.so.2”

为什么我的 /usr/lib/x86_64-linux-gnu 目录下有 libc.so.6?