【gulpコマンド】「throw new Error(errors.missingBinary()); 」と表示された時の解決方法。

WindowsPCで構成したgulpをmacPCで使用したらエラーがでました。
その解消方法をメモしておきます。

gulpコマンドエラー

windowsでやっているようにコマンドを打ったらエラーになりました。

●●●●●●●macbook:pc ●●●●$ gulp sass
/Users/プロジェクトパス/node_modules/node-sass/lib/binding.js:15
      throw new Error(errors.missingBinary());
      ^

Error: Missing binding /Users/プロジェクトパス/node_modules/node-sass/vendor/darwin-x64-72/binding.node
Node Sass could not find a binding for your current environment: OS X 64-bit with Node.js 12.x

Found bindings for the following environments:
  - Windows 64-bit with Node.js 8.x

This usually happens because your environment has changed since running `npm install`.
Run `npm rebuild node-sass` to download the binding for your current environment.
    at module.exports (/Users/プロジェクトパス/node_modules/node-sass/lib/binding.js:15:13)
    at Object.<anonymous> (/Users/プロジェクトパス/node_modules/node-sass/lib/index.js:14:35)
    at Module._compile (internal/modules/cjs/loader.js:955:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:991:10)
    at Module.load (internal/modules/cjs/loader.js:811:32)
    at Function.Module._load (internal/modules/cjs/loader.js:723:14)
    at Module.require (internal/modules/cjs/loader.js:848:19)
    at require (internal/modules/cjs/helpers.js:74:18)
    at Object.<anonymous> (/Users/プロジェクトパス/node_modules/gulp-sass/index.js:162:21)
    at Module._compile (internal/modules/cjs/loader.js:955:30)

node-sass を rebuildしたら直った!

いろいろ調べてたどり着いたのが「node-sass を rebuild」するということでした。
改めてnode-sassをrebuildします。

$ npm rebuild node-sass

再度[gulp sass]を実行

改めてgulp sassを実行してみます。

$ gulp sass
[17:47:31] Using gulpfile ~/.bitnami/stackman/machines/xampp/volumes/root/htdocs/www.sphone-d.jp/user_data/pc/gulpfile.js
[17:47:31] Starting 'sass'...
[17:47:31] Finished 'sass' after 330 ms

そしたら何とwindowsと同じように[gulp sass]が成功してました。
よかったー!!

まとめ

gulpは最近勉強してるんだけどいろいろエラーが起きて結構苦戦しています。
gulpのエラーが起きた方の参考にしていただければと思います。

Shareこの記事をシェアしよう!