代码之家  ›  专栏  ›  技术社区  ›  Serg Anateus

节点应用程序未以“zeromq.Node:undefined-symbol:sodium_init”消息启动

  •  1
  • Serg Anateus  · 技术社区  · 3 年前

    问题

    节点应用程序未以以下消息启动:

    node: symbol lookup error: /home/user/nodeapp/node_modules/zeromq/build/Release/zeromq.node: undefined symbol: sodium_init
    

    应用程序使用的ZeroMQ.js在 package.json :

      "dependencies": {
        "zeromq": "^6.0.0-beta.16"
      }
    

    启动应用程序失败,出现上述消息。我正在跑步:

    • 乌干达20.04.5 LTS
    • 节点v16.18.1
    • 净利润8.19.2
    • libzmq3开发(4.3.2-2ubuntu1)

    变通办法

    如果删除,应用程序将正常启动和运行 zeromq 模块,并使用以下命令进行安装:

    npm install zeromq@6.0.0-beta.16 --zmq-shared
    

    但下次我跑步的时候 npm install 问题又回来了。

    问题

    是否可以不在我的环境中手动安装ZeroMQ.js版本6.0.0以避免应用程序失败 undefined symbol 消息

    不幸的是,由于系统要求,我现在无法升级Ubuntu和Node。

    0 回复  |  直到 3 年前
        1
  •  2
  •   Bartel    3 年前

    我刚刚创建了一个PR来解决这个bug: https://github.com/zeromq/zeromq.js/pull/553

    希望能尽快合并并发布。所以提高你的 zeromq 之后的npm包。