如何将 zeromq 与电子应用程序捆绑在一起?

How do I bundle zeromq with an electron app?

zmq 引入我的 Electron 应用程序被证明是繁重的:

01:33:03 {master %=} rgbkrk@puter ~/code/jupyter-sidecar$ electron .
dyld: lazy symbol binding failed: Symbol not found: __ZN2v89Signature3NewEPNS_7IsolateENS_6HandleINS_16FunctionTemplateEEEiPS5_
  Referenced from: /Users/rgbkrk/code/jupyter-sidecar/node_modules/zmq/build/Release/zmq.node
  Expected in: dynamic lookup

dyld: Symbol not found: __ZN2v89Signature3NewEPNS_7IsolateENS_6HandleINS_16FunctionTemplateEEEiPS5_
  Referenced from: /Users/rgbkrk/code/jupyter-sidecar/node_modules/zmq/build/Release/zmq.node
  Expected in: dynamic lookup

/usr/local/bin/electron: line 2: 46288 Trace/BPT trap: 5       "/usr/local/lib/node_modules/electron-prebuilt/dist/Electron.app/Contents/MacOS/Electron" "$@"

我应该如何捆绑 zmq?我所做的就是将它设置为环境的一部分 运行 npm install --save zmq.

您可能只需要将 libzmq.dylib 复制到与 zmq.node 文件夹相同的目录中

您可以使用 zeromq.js.

它具有与 zmq 相同的 API,但具有针对 Node 和 Electron 的预构建静态二进制文件。所以不需要合适的 C/C++ 编译器工具链:

npm install zeromq

对于 Electron 特定指令检查 https://github.com/zeromq/zeromq.js#rebuilding-for-electron