Using gRPC in Electron

I try to use grpc in an electronic application, but I get the following error:

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

I am using OSX Sierra 10.12.1, node 6.8.1, electron 1.4.4 and grpc 1.0.1-pre1.

I updated the xcode command line tools and did brew install openssl -force.

I built a binary with:

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

and manually:

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

But when I run the application, I still get an error message.

+4
source share
1 answer

Restore grpc module in this way

npm install --save-dev electron-rebuild

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

This will restore the GRPC and you will go well.

+3
source

Source: https://habr.com/ru/post/1658954/


All Articles