MacBook Air (M1, 2020)の開発周りについて
もう少し様子見しようと思っていたのですが結局は買いました。普段使いがMacBook Proなのですが、TouchBar無しと独立escキーは良いです。まぁ、16GB環境が必要ならminiを買おうくらいのつもりで、とりあえず8GBモデルです。
我慢できなくてMacでのiOSアプリ動作検証用にとりあえず入手。Air 8GB/512モデル。これで実機検証をちゃんとできる。感想はWeb爆速、XCodeも速い。普通の人はこれで充分すぎるくらいだな。 pic.twitter.com/yFSi6sc37J
— べるべる (@bellx2) 2020年11月22日
まぁ、NDA外れるのでarm版検証情報を世に出せるというもの有りますが。
開発環境
TerminalをRosettaで起動させHomebrewをx86_64モードで使っていたのですが、iOSシュミレータ周りがおかしくてfastlaneのテストやReactNative(expo)がうまく実行できない等の現象が出ていました。
半日戦ったオススメは以下になります
- Terminalはそのまま(arm64で動かす)
- Homebrewは使わず、MacPortsで使う
- nodeはx86バイナリーを公式からダウンロードして使う
- rubyは標準をbundle installで使う(MacPortsでも動いた)
現時点でうまくいっていないのは + rbenv, nodenvでのinstall + MacPortsでのnodeインストール などです。
バイナリーを入れてもRosetta2でちゃんと動作します。また、標準やMacPortsでuniversalなものについてはdylib形式になっいて、ダイナミックリンクでも適切なモジュールがロードされるようです。
ARCH周りはどうしても2つの環境で検証が必要なので、ある程度方法が確立するまでは大変です。
その他開発系の問題
- FirebaseAnalyticsを入れるとシュミレータで動作しない
- VSCodeはARM64 Experimentalを使う
等です。ChromeやElectronが動き始めているので対応はもう少しだとは思います。
しかし、このサクサク動作はすばらしいです。開発系は仮想動かないので待てと言いましたが、買って慣れておく必要があるかもしれません。「2.8倍の速さでコードを書く」と書かれているのは本当かも...(笑。