node.js - 在 Electron 中使用 gRPC

标签 node.js electron grpc electron-builder

我试图在 Electron 应用程序中要求 grpc 但我收到以下错误:

Error: dlopen(/srv/node_modules/grpc/src/node/extension_binary/grpc_node.node, 1): Symbol not found: _GENERAL_NAME_free
  Referenced from: /srv/node_modules/grpc/src/node/extension_binary/grpc_node.node
  Expected in: flat namespace

我正在使用 OSX Sierra 10.12.1、node 6.8.1、electron 1.4.4 和 grpc 1.0.1-pre1。

我升级了 xcode 命令行工具并执行了 brew install openssl --force。

我构建了二进制文件:

LDFLAGS=-L/usr/local/opt/openssl/lib CPPFLAGS=-I/usr/local/opt/openssl/include ./node_modules/.bin/electron-rebuild

并手动使用:

LDFLAGS=-L/usr/local/opt/openssl/lib CPPFLAGS=-I/usr/local/opt/openssl/include HOME=~/.electron-gyp node-pre-gyp rebuild --target=1.4.4 --arch=x64 --dist-url=https://atom.io/download/atom-shell

但是当我运行该应用程序时,我仍然收到错误。

最佳答案

像这样重建grpc模块

npm install --save-dev electron-rebuild

(On Mac & Linux)
./node_modules/.bin/electron-rebuild
(On Windows)
.\node_modules\.bin\electron-rebuild.cmd

这将重建 GRPC,您可以开始了。

关于node.js - 在 Electron 中使用 gRPC,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40265877/

相关文章:

javascript - 在 NodeJS/JavaScript 中将函数源代码转换为字符串

node.js - 如何使用jsdoc3记录ES6类模块?

java - Gradle无法清理输出目录

java - gRPC——在 Protobuf 中将 .png 图像从 Java 客户端发送到 Python 服务器

performance - 大型邮件的 Electron IPC替代品

.net - 当 NuGet 包具有 Grpc.Core 作为依赖项时,二进制文件被添加到项目中

javascript - ember-cli-mirage 重定向 socket.io 客户端,在 mirage 中注入(inject)

node.js - MongoDB - 数学计算

angular - Electron Angular 2和aws放大

mysql - 在 Electron 中访问 MySQL 数据库