ローカルの Gatsby のブログの node module を一部更新したら動かなくなりました。
Something went wrong installing the “sharp” module
ビルドはできるけど npm start(Gatsby development) のコマンドでコケる。

神守 由理子/フロントエンドエンジニア
- Machine: Mac Book Pro
- Chip: Apple M1
- OS: Sonoma
色々調べていたら、画像処理モジュールの sharp をバージョンアップしたせいでエラーが発生したらしい。
エラー解決方法が指示されているから、試すもののうまくいかない。Win機で同様のエラーが出た人はWin機用の sharp
をインストールしてうまくいっていた記事は読んだ。
なので npm start
時に返ってくる、以下で理論的にはうまくいくと思ったのですがどうもうまくいかない。
npm install --ignore-scripts=false --foreground-scripts --verbose sharp
npm install --platform=darwin --arch=arm64v8 sharp
色々ググった結果、解決したのでその方法をメモっておきます。
- Apple Silicon: Something went wrong installing the “sharp” module #3214
- Cannot run gatsby develop on Mac M1
上記2つの記事を参考にとりあえず言われるがままにやってみました。
brew 経由で2つのライブラリをインストール
今この記事を読んで私と同じ悩みの方が homebrew がないとは考えにくいのですが、ない方はこちらを参考にインストールしてください。
brew install gcc
- GCC(GNU Compiler Collection)
C言語やC++などをコンパイルする環境を提供するそう。いらなさそうな気はしたけどとりあえずインストール。
brew reinstall vips
brew info vips
GCC は要求主導型の水平スレッド画像処理ライブラリらしいです。このバージョンが古いとよくないみたい。
とりあえず言われるがままに reinstall
で再インストール。で、何が入ったかを念の為 brew info
で確認。
rm -fr node_modules
npm i
node_modules
を削除して、再インストール。ここまでやれば大丈夫っぽいけど、参照リンクの一個目でその続きのスレッドを読むとまた動かなくなったとのこと。
もう一個の参照リンクの Sharp 開発に関わっているぽい人のアカウントの回答者が以下コマンドについて言及していたので、やってみた。
npm install --verbose --foreground-scripts sharp
多分、最初にnpm start
で指示があった以下とオプションが一個違うだけでほぼ一緒。
npm install --ignore-scripts=false --foreground-scripts --verbose sharp
ちゃんと動いた。良かった。
npm start
まとめ・英語のリファレンスが一番解決する
昨日まで動いていたので、node module バージョンアップによるマシーンのスペックとSharp のバージョンで不具合がおこったっぽいで す。
マニアックなことをやっていると、英語のリファレンスが必須になるなぁとつくづく思いました。
この記事がみなさんの一助となれば幸いです。
最後までお読みいただきありがとうございました。