/lib64/libc.so.6:找不到版本“GLIBC_2.14”。为什么我会收到此错误?

问题描述 投票:0回答:6

我正在使用 Node.js 工作。我已经安装了鹰嘴豆泥包。它安装正确。我正在使用这个包来修改 pdf 文件。下载 pdf 时,我调用鹰嘴豆泥。单击下载时出现此错误。

Error: /lib64/libc.so.6: version `GLIBC_2.14' not found (required by /var/www/html/node_modules/hummus/binding/hummus.node)
    at Object.Module._extensions..node (module.js:681:18)
    at Module.load (module.js:565:32)
    at tryModuleLoad (module.js:505:12)
    at Function.Module._load (module.js:497:3)
    at Module.require (module.js:596:17)
    at require (internal/module.js:11:18)
    at Object.<anonymous> (/var/www/html/node_modules/hummus/hummus.js:5:31)
    at Module._compile (module.js:652:30)
    at Object.Module._extensions..js (module.js:663:10)
    at Module.load (module.js:565:32)
    at tryModuleLoad (module.js:505:12)
    at Function.Module._load (module.js:497:3)
    at Module.require (module.js:596:17)
    at require (internal/module.js:11:18)
    at /var/www/html/app/routes.js:2250:18
    at Layer.handle [as handle_request] (/var/www/html/node_modules/express/lib/router/layer.js:95:5)

在这个链接的帮助下,我更新了 glibc。但我仍然遇到同样的错误。请帮我找出问题所在。 我使用的是 CentOs 6.9

node.js centos hummus.js gipc
6个回答
50
投票

您需要在当前安装的 glibc 旁边安装 glibc,因为您无法直接在 centos 6.x 中安全地更新到 glibc 2.14。请按照以下步骤安装 glibc 2.14:

  1. mkdir ~/glibc214
  2. cd ~/glibc214
  3. wget http://ftp.gnu.org/gnu/glibc/glibc-2.14.tar.gz
  4. tar zxvf glibc-2.14.tar.gz
  5. cd glibc-2.14
  6. mkdir build
  7. cd build
  8. ../configure --prefix=/opt/glibc-2.14
  9. make -j4
  10. sudo make install
  11. export LD_LIBRARY_PATH=/opt/glibc-2.14/lib
    (对于当前登录会话)或在 /etc/environment 中添加
    LD_LIBRARY_PATH=/opt/glibc-2.14/lib
    并执行
    source /etc/environment
    (永久添加环境变量)

5
投票

要在本地安装,第一个答案中的第 8 行变成了

../configure --prefix=$HOME/.local

那么我们就不需要第10行的“sudo”了。即

make install 

就够了。

你可能需要

touch $HOME/.local/etc/ld.so.conf

第 11 行变为:

export LD_LIBRARY_PATH="$HOME/.local/lib"    

在 el6

.bash_profile


3
投票

第 8 行。

../configure --prefix=/opt/glibc-2.14
对我来说是错误的

最后我不得不使用以下

../configure --prefix=/opt/glibc-2.14  libc_cv_forced_unwind=yes libc_cv_c_cleanup=yes

1
投票

好吧,我无法重现这个错误。然而,这可能有效:

  1. 从作者那里下载整个 hummusjs 包 https://github.com/galkahana/HummusJS(例如 zip)。

  2. 在其 package.json 中添加新的脚本条目:

    "rebuild": "node-pre-gyp rebuild"

  3. cd 到桌面上的包文件夹并运行“npm install”。

  4. 为了安全起见,请删除 .binding 和 .build 文件夹。

  5. 编辑包中的 binding.gyp 文件(“源”之前的新部分):

            ],
    #added by 11AND2
    "conditions": [
    [ 'OS=="linux"',
    {
        "cflags": ["-include gcc-preinclude.h"]
    }
    ]],
    #end added by 11AND2
       'sources': [
    
  6. 然后运行

    npm run rebuild
    并等待:-)

  7. 尝试失败的示例并报告。您还可以执行

    npm run test
    来运行模块测试用例。


0
投票

安装 python 包时遇到类似的问题:

pip install requests_gssapi
# OSError: /lib64/libc.so.6: version `GLIBC_2.33' not found (required by /home/linuxbrew/.linuxbrew/Cellar/krb5/1.20.1/lib/libgssapi_krb5.so)

使用最新的 gcc 重新安装 Homebrew 修复了以下问题:

sudo rm -rf /home/linuxbrew/.linuxbrew/
sh -c "$(curl -fsSL https://raw.githubusercontent.com/Linuxbrew/install/master/install.sh)"
brew install gcc

0
投票

在 python 中也有同样的问题。我发现最好的解决方案是在本地运行 Lambda 环境,然后在其中创建层。

https://stackoverflow.com/a/78209052/23744703

© www.soinside.com 2019 - 2024. All rights reserved.