Node Sass could not find a binding for your current environment: OS X 64-bit with Node.js 9.x

新しくrailsプロジェクトを作って、諸々設定ファイルをコピペしていざ起動とやってみたら、何かエラーになった。

〜 省略 〜
xx:xx:xx webpack.1 | ERROR in ./app/javascript/stylesheets/application.scss
xx:xx:xx webpack.1 | Module build failed: ModuleBuildError: Module build failed: Error: Missing binding /Users/hoge_prj/node_modules/node-sass/vendor/darwin-x64-59/binding.node
xx:xx:xx webpack.1 | Node Sass could not find a binding for your current environment: OS X 64-bit with Node.js 9.x
xx:xx:xx webpack.1 |
xx:xx:xx webpack.1 | Found bindings for the following environments:
xx:xx:xx webpack.1 |   - OS X 64-bit with Node.js 8.x
xx:xx:xx webpack.1 |
xx:xx:xx webpack.1 | This usually happens because your environment has changed since running `npm install`.
xx:xx:xx webpack.1 | Run `npm rebuild node-sass --force` to build the binding for your current environment.
xx:xx:xx webpack.1 |     at module.exports (/Users/hoge_prj/node_modules/node-sass/lib/binding.js:15:13)
xx:xx:xx webpack.1 |     at Object.<anonymous> (/Users/hoge_prj/node_modules/node-sass/lib/index.js:14:35)
〜 省略 〜

「npm install」したからだと言われてるけど、そんな記憶無し。
ただ記憶に無いだけかもしれないので、とりあえず言われた通り

npm rebuild node-sass --force

を実行後に再度試してみたが同じエラーになる。
そもそも、上記のコマンドを実行した時に一瞬でプロンプトが戻ってきたので、何もしてないんじゃ疑惑が。

プロジェクトのnpmパッケージはyarnで管理しているんだけど、プロジェクトのディレクトリで上記のコマンドを打つのが何となく嫌だったので、ホームディレクトリに戻って打ったのが原因だったみたい。

再度、プロジェクトのディレクトリで上記コマンドを実行したところ

> node-sass@4.7.2 install /Users/hoge_prj/node_modules/node-sass
> node scripts/install.js

node-sass build Binary found at /Users/hoge_prj/node_modules/node-sass/vendor/darwin-x64-59/binding.node

> node-sass@4.7.2 postinstall /Users/hoge_prj/node_modules/node-sass
> node scripts/build.js

Binary found at /Users/hoge_prj/node_modules/node-sass/vendor/darwin-x64-59/binding.node
Testing binary
Binary is fine
node-sass@4.7.2 /Users/hoge_prj/node_modules/node-sass

と表示された。

その後、無事railsの起動を確認。
良かった。

コメント

タイトルとURLをコピーしました