Okay I see this is a known problem with electron
https://github.com/grpc/grpc/issues/6138
I'll continue my search over there. I thought since electron is based on
node.js it should work from inside it.

On Fri, Apr 20, 2018 at 9:47 AM, Stefan Doerr <[email protected]> wrote:

> Seems like because it is called through electron and not through node.js
> it tries to look in the wrong folder for the extension binary!
>
> Expected directory: electron-v1.8-linux-x64-glibc
> Found: [node-v57-linux-x64-glibc]
> This problem can often be fixed by running "npm rebuild" on the current
> system
> Original error: Cannot find module '/home/stefan/Work/ElectroNGL/
> node_modules/grpc/src/node/extension_binary/electron-v1.
> 8-linux-x64-glibc/grpc_node.node'
>
> But this folder doesn't exist. Would I be able to force it to look for it
> in node-v57-linux-x64-glibc?
>
> On Fri, Apr 20, 2018 at 9:41 AM, Stefan Doerr <[email protected]> wrote:
>
>> Same problem actually if I move the require('grpc') inside of main.js
>>
>> ```
>> main.js
>>
>> 'use strict';
>> var grpc = require('grpc');
>> const electron = require('electron');
>> ```
>>
>> Throws the same error
>>
>> On Fri, Apr 20, 2018 at 9:34 AM, Stefan Doerr <[email protected]>
>> wrote:
>>
>>> Sure. I tried using it through Electron. So I just start the main.js
>>> with electron and get the error in the js console.
>>>
>>> ```
>>> main.js
>>>
>>> 'use strict';
>>>
>>> const electron = require('electron');
>>> const app = electron.app;
>>> const BrowserWindow = electron.BrowserWindow;
>>>
>>> require('electron-debug')({showDevTools: true});
>>>
>>> var mainWindow = null;
>>>
>>> app.on('ready', function() {
>>>     mainWindow = new BrowserWindow({
>>>         height: 600,
>>>         width: 800,
>>>     });
>>>
>>>     mainWindow.loadURL('file://' + __dirname + '/app/webapp.html');
>>>     mainWindow.setMenu(null);
>>> });
>>> ```
>>>
>>> ```
>>> webapp.html
>>>
>>> <!DOCTYPE html>
>>> <html lang="en">
>>> <head>
>>>   <title>webapp</title>
>>>   <meta charset="utf-8">
>>>   <meta name="viewport" content="width=device-width, user-scalable=no,
>>> minimum-scale=1.0, maximum-scale=1.0">
>>>   <link rel="stylesheet" href="css/font-awesome.min.css" />
>>>   <link rel="stylesheet" href="css/main.css" />
>>>   <link rel="subresource" href="css/light.css" />
>>>   <link rel="subresource" href="css/dark.css" />
>>> </head>
>>> <body>
>>> <!-- Insert this line above script imports  -->
>>> <script>if (typeof module === 'object') {window.module = module; module
>>> = undefined;}</script>
>>>
>>> <!-- normal script imports etc  -->
>>>   <!-- NGL -->
>>>   <script src="dist/ngl.js"></script>
>>>
>>>   <!-- UI -->
>>>   <script src="js/lib/signals.min.js"></script>
>>>   <script src="js/lib/tether.min.js"></script>
>>>   <script src="js/lib/colorpicker.min.js"></script>
>>>   <script src="js/ui/ui.js"></script>
>>>   <script src="js/ui/ui.extra.js"></script>
>>>   <script src="js/ui/ui.ngl.js"></script>
>>>   <script src="js/gui.js"></script>
>>>
>>> <!-- Insert this line after script imports -->
>>> <script>if (window.module) module = window.module;</script>
>>> </body>
>>> <script>
>>>
>>>     //var PROTO_PATH = __dirname + '/../communication.proto';
>>>     var PROTO_PATH = '../communication.proto';
>>>     var grpc = require('grpc');
>>>     var hello_proto = grpc.load(PROTO_PATH).helloworld;
>>>
>>>     /**
>>>      * Implements the SayHello RPC method.
>>>      */
>>>     function sayHello(call, callback) {
>>>       callback(null, {message: 'Hello ' + call.request.name});
>>>     }
>>>
>>>     /**
>>>      * Starts an RPC server that receives requests for the Greeter
>>> service at the
>>>      * sample server port
>>>      */
>>>     function main() {
>>>       var server = new grpc.Server();
>>>       server.addService(hello_proto.Greeter.service, {sayHello:
>>> sayHello});
>>>       server.bind('0.0.0.0:50051', grpc.ServerCredentials.createI
>>> nsecure());
>>>       server.start();
>>>     }
>>>
>>>     main();
>>>     console.log('Started server?')
>>> </script>
>>> </html>
>>> ```
>>>
>>> On Fri, Apr 20, 2018 at 12:40 AM, Spencer Fang <[email protected]>
>>> wrote:
>>>
>>>> Can you share the commands you ran that led to this error?
>>>>
>>>> On Thu, Apr 19, 2018 at 1:41 PM <[email protected]> wrote:
>>>>
>>>>> I am trying to use gRPC for the first time but I am getting following
>>>>> error:
>>>>>
>>>>> Uncaught Error: Failed to load gRPC binary module because it was not
>>>>> installed for the current system
>>>>> Expected directory: electron-v1.8-linux-x64-glibc
>>>>> Found: [node-v57-linux-x64-glibc]
>>>>> This problem can often be fixed by running "npm rebuild" on the
>>>>> current system
>>>>> Original error: Cannot find module '/home/stefan/Work/myproj/node
>>>>> _modules/grpc/src/node/extension_binary/electron-v1.8-linux-
>>>>> x64-glibc/grpc_node.node'
>>>>>     at Object.<anonymous> (/home/stefan/Work/myproj/node
>>>>> _modules/grpc/src/grpc_extension.js:53:17)
>>>>>     at Object.<anonymous> (/home/stefan/Work/myproj/node
>>>>> _modules/grpc/src/grpc_extension.js:63:3)
>>>>>     at Module._compile (module.js:569:30)
>>>>>     at Object.Module._extensions..js (module.js:580:10)
>>>>>     at Module.load (module.js:503:32)
>>>>>     at tryModuleLoad (module.js:466:12)
>>>>>     at Function.Module._load (module.js:458:3)
>>>>>     at Module.require (module.js:513:17)
>>>>>     at require (internal/module.js:11:18)
>>>>>     at Object.<anonymous> (/home/stefan/Work/ElectroNGL/
>>>>> node_modules/grpc/src/client.js:37:12)
>>>>>
>>>>>
>>>>> I checked and my node.js version should be supported
>>>>> $ node --version
>>>>> v8.9.3
>>>>>
>>>>>
>>>>> Could you help me out with this?
>>>>>
>>>>> Thanks!
>>>>>
>>>>> --
>>>>> You received this message because you are subscribed to the Google
>>>>> Groups "grpc.io" group.
>>>>> To unsubscribe from this group and stop receiving emails from it, send
>>>>> an email to [email protected].
>>>>> To post to this group, send email to [email protected].
>>>>> Visit this group at https://groups.google.com/group/grpc-io.
>>>>> To view this discussion on the web visit
>>>>> https://groups.google.com/d/msgid/grpc-io/9fa9c6cc-0d1d-49ee
>>>>> -b81e-b3d7a0bbed58%40googlegroups.com
>>>>> <https://groups.google.com/d/msgid/grpc-io/9fa9c6cc-0d1d-49ee-b81e-b3d7a0bbed58%40googlegroups.com?utm_medium=email&utm_source=footer>
>>>>> .
>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>
>>>>
>>>>
>>>> --
>>>> Spencer Fang
>>>>
>>>
>>>
>>
>

-- 
You received this message because you are subscribed to the Google Groups 
"grpc.io" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/grpc-io.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/grpc-io/CAKLxUuHKnENeL3x5otpeAx7fHDcadw%2ByTfum2rwu40Pkbtg-KA%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to