Open7
M1 Macbookで遭遇したエラーと対処法
sharpコンパイルエラー
yarnでパッケージをインストールする際に遭遇。
[4/8] ⠁ sharp
warning Error running install script for optional dependency: "/Users/taishi/Work/node_modules/sharp: Command failed.
Exit code: 1
Command: (node install/libvips && node install/dll-copy && prebuild-install) || (node-gyp rebuild && node install/dll-copy)
Arguments:
Directory: /Users/taishi/Work/node_modules/sharp
.
.
解決策
以下の通りにやったらすんなり成功
Can't compile under Apple Silicon M1 arm64 · Issue #2460 · lovell/sharp
nodebrewインストールエラー
解決策
これを機にnodenvに乗り換えました。
gitが使えない
Xcode周りの?コマンドラインツールをインストールする必要あり。これはM1関係ない気がする。
解決策
$ xcode-select --install
$ xcode-select --reset
firebaseエラー
firebaseのnpmライブラリを使い始めたらメモリリークっぽいのが発生してNext.jsアプリが速攻で落ちる。
環境: nodenvで入れた以下のNode.js
➜ node -v
v14.15.4
<--- Last few GCs --->
[5990:0x120008000] 22438 ms: Scavenge 305.8 (388.7) -> 305.2 (388.7) MB, 1.1 / 0.0 ms (average mu = 0.986, current mu = 0.939) allocation failure
[5990:0x120008000] 29958 ms: Mark-sweep 321.5 (399.9) -> 271.8 (339.4) MB, 3.8 / 0.0 ms (+ 31.4 ms in 624 steps since start of marking, biggest step 1.7 ms, walltime since start of marking 36 ms) (average mu = 0.994, current mu = 0.995) finalize incre
<--- JS stacktrace --->
FATAL ERROR: wasm code commit Allocation failed - process out of memory
1: 0x10441e9d8 node::Abort() [/Users/taishi/.nodenv/versions/14.15.4/bin/node]
2: 0x10441eb58 node::errors::TryCatchScope::~TryCatchScope() [/Users/taishi/.nodenv/versions/14.15.4/bin/node]
.
.
解決策
以下に従ってNodeのv15系を入れたら動いた。どゆこと?笑
JSのruns out of memoryを治す根本的なやり方
$ arch -x86_64 zsh
そしてNode.jsインストール(例はnvm)
$ nvm install 12
そして戻す
$ arch -arm64 zsh