目次
前置き
M1 Macは基本的に便利なツールだが、時としてM1ならではの困るポイントというのもいくつか存在する。
私の場合、それらは大抵プログラミングの最中になるのだが、今回のケースもその一つ。
画像処理系のnpm ライブラリに sharp
というものがある。これはM1 Mac環境だとインストールに失敗する時がある。
エラーの原因は環境にもよるかもしれないが、node-gyp
や vips
などによるものである。
今回、あるサイト作成作業のなかでfavicon画像を生成したい場面に出くわした。
favicon
作成における処理をプログラムから行う際に役立つパッケージを以前作成していたので、そちらを利用して生成処理を書こうと思ったのだが、このツールは sharp
を利用していたため、現在の自身のNode.js環境(v16)だとインストール時にエラーになってしまう。
だが、今作業しているこのM1マシンでなんとかエラーを回避してこのツールを使いたかったので、それを行った際の作業ログを備忘録として残しておく。
M1 Macでもsharpをインストールする方法(暫定対応)
前置きが長くなったが本題にはいる。といって結論はシンプルで、Node.js のv14系だとsharp
はインストールできるので、一度v14系に切り替えてインストールを行ったという形になる。
今回のケースではこの生成処理は、普段遣いのNode.jsのversionとは分けて管理できる状態だったということもあり、この回避方法が使えている。
が、一つのプロジェクトでやる場合にはこの回避方法は辛いかもしれない。
以下、作業ログ。
なお、自身は nvm
を用いて複数のNode.jsを使い分けられるようにしている。
# v14系の最新バージョンをインストール nvm install v14.19.1 #この時点でnode.jsはv14系に切り替わっているので、後は上のツールをインストールしてコードを書く yarn add simple-favicon-generator
というわけで、すべての人の回避策にはならないが、もしNode.jsのversionを変えられるような状況であれば、v14系で sharp
、または sharp
に依存したツールを使うというのが時間がかからずに実施できる策となる。