😂

M1 Macの落とし穴 React node version指定編

2022/04/26に公開

はじめて記事を書きます。
今回、現在お仕事している現場にてつまづいた事を備忘録として書きます。

開発環境は以下を使用しております。

  • MacbookPro M1 13インチ
  • React.js
  • Next.js
  • TypeScript
  • chakra-ui

以下の事象にてはまってしまいました。

①開発環境のnodeのversionが14系に変更。
②私が使用していたのは、version16.0.0。
いつも通りnpmコマンドでchakra-uiーstepsをinstallしようとした際にerrorが発生。

npm ERR! ERESOLVE unable to resolve dependency tree

この下につらつらとerrorの表記が書かれている状態。
重要点はコレ

npm ERR! notsup Required: {"node":"^14.0.0","npm":"^6.0.0"}

③どうやらnodeの互換性がないとの事で、現在のnodeのversionを14系に合わせようとしたところ
どういうわけか下げされない!!

結論

M1 Macには16系より下はアーカイブされていないとの事です。

原因を調ベる際、こちらの記事を参考にさせていただきました。
https://kotsukotsu.work/tech/2021-11-13-node-js-m1-mac-で-nodebrew-から-node-v-16-0-0-未満をインストールする/

記事を参考にさせていただき、私が行った事を以下に記します。
同じ問題で苦しんでいる方の参考になれば幸いです。

①node_mosuleを削除する。
②削除したのち、上記サイトの記事を参考にし、nodeをinstall(めっちゃ時間かかる・・・)
versionは14.19.1を選択。
コマンドは以下です。

nodebrew compile v14.19.1

// 上記が終了したらcurrent versionを確認
nodebrew ls

// おそらく通常だとM1 Macは16より下は入っていないはずなのでversionを指定
nodebrew use v14.19.1

install終了後、再度実施

npm i chakra-ui-steps

今度はinstallできました。

M1 Macは落とし穴が多くて大変です・・・

Discussion