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

use*_*187 11 centos node.js gipc hummus.js

我在节点js工作.我已经安装了鹰嘴豆泥包.它安装得当.我正在使用此包修改pdf文件.在下载pdf时我称之为鹰嘴豆泥.Onclick下载我收到此错误.

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)
Run Code Online (Sandbox Code Playgroud)

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

Abh*_*ngh 5

您需要在当前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(用于当前登录会话)或添加LD_LIBRARY_PATH=/opt/glibc-2.14/lib/ etc / environment并执行source /etc/environment(永久添加env变量)

  • 在 ```sudo make install``` ,`无法打开配置文件 /opt/glibc-2.14/etc/ld.so.conf: ` (5认同)
  • 在 ../configure --prefix=/opt/glibc-2.14 我得到了配置:错误:在`/root/glibc214/glibc-2.14/build'中:配置:错误:在$PATH中找不到可接受的C编译器 (2认同)
  • 要修复:`glibc-2.14/build/elf/ldconfig:无法打开配置文件glibc-2.14/etc/ld.so.conf:没有这样的文件或目录`我做了:`cd glibc-2.14/etc/` , `sh -c "echo 'glibc-2.14/lib' &gt;&gt; ld.so.conf"` (2认同)

小智 5

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

../configure --prefix=$HOME/.local
Run Code Online (Sandbox Code Playgroud)

那么我们不需要第 10 行中的“sudo”。IE

make install 
Run Code Online (Sandbox Code Playgroud)

足够。

你可能需要

touch $HOME/.local/etc/ld.so.conf
Run Code Online (Sandbox Code Playgroud)

第 11 行变为:

export LD_LIBRARY_PATH="$HOME/.local/lib"    
Run Code Online (Sandbox Code Playgroud)

.bash_profileel6中


11A*_*ND2 1

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

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

  2. 在其 package.json: 中添加一个新的脚本条目"rebuild": "node-pre-gyp rebuild"

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

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

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

            ],
    #added by 11AND2
    "conditions": [
    [ 'OS=="linux"',
    {
        "cflags": ["-include gcc-preinclude.h"]
    }
    ]],
    #end added by 11AND2
       'sources': [
    
    Run Code Online (Sandbox Code Playgroud)
  6. 然后运行npm run rebuild并等待:-)

  7. 尝试失败的示例并报告。您还可以执行npm run test来运行模块测试用例。