Failed to load gRPC binary module because it was not installed for the current systemで怒られたときの対処法

なかなか解決しなかったので一応メモ。

環境

node: 10系

使用パッケージ

  • electron
  • firebase

対処法

1. nodeを9系にダウングレードする(あまり意味ないかも)

僕は ndenv でnodeをインストールしているので

$ ndenv install -l |less
$ ndenv install v9.11.2
$ ndenv global v9.11.2

node_modulesを吹っ飛ばす

$ rm -rf node_modules
$ npm i

これでもまだ僕の場合駄目でした。

2. rebuildする

$ npm rebuild --runtime=electron --target=2.0.11 --disturl=https://atom.io/download/electron --abi=57

これで僕の場合解決しました。

参考

stackoverflow.com