2019/11/19
node-ffi 公式は node 12 でビルドが通らない
node から直接Cのライブラリを呼び出せる [ffi](https://www.npmjs.com/package/ffi) というライブラリを
インストールしようとしたところ、以下のようなエラーが出てインストール出来ませんでした。
```bash
`gutter: false;
$ npm install --save ffi
> ref@1.3.5 install /home/yusuke/ffi_sample/node_modules/ref
> node-gyp rebuild
make: Entering directory '/home/yusuke/tmp/node_modules/ref/build'
CXX(target) Release/obj.target/binding/src/binding.o
../src/binding.cc: In function ‘Nan::NAN_METHOD_RETURN_TYPE {anonymous}::WriteObject(Nan::NAN_METHOD_ARGS_TYPE)’:
../src/binding.cc:222:43: error: no matching function for call to ‘v8::Value::BooleanValue()’
bool persistent = info[3]->BooleanValue();
... 省略
gyp ERR! build error
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack at ChildProcess.onExit (/usr/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:194:23)
gyp ERR! stack at ChildProcess.emit (events.js:210:5)
gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:272:12)
```
依存している [ref](https://www.npmjs.com/package/ref) というライブラリのビルドに失敗しているようです。
この `v8::Value::BooleanValue()` 等の参照関数はだいぶ前から deprecated だったようです。
そして、node v.12 でついに削除されました。
そのため、node v.12 以降ではビルドが通らなくなってしまったのです。
### 解決策(一時的な)
幸いなことに、この問題は既に PullRequest として報告されていました。