🎉
Mac M2でCannot find module'./sentry_cpu_profiler-darwin-x64-131.nodeエラー
Error: An error occurred while loading instrumentation hook: Cannot find module './sentry_cpu_profiler-darwin-x64-131.node'
Require stack:
チーム開発してた際にM2 Macを使用しているメンバーが複数いたが、その際に一人だけ上記のエラーでbuildできないとの報告を受けた際の調査記録です。
結論
エラーとなっていた人はx86のNodeを使用していたためエラーとなっていた。
Arm64のNodeに切り替えたらエラーは出なくなった。
調査
下記のissueでライブラリの衝突などではないかとのコメントがあった。
which nodeで調べたがチーム内で差異はなし。
which node
/account_name/.volta/bin/node
uname -mでアーキテクチャを調べると動いてない人はx86になってた。
正常に動いてた人
uname -m
arm64
動いてなかった人
uname -m
x86_64
arch のコマンドで調査
正常に動いている人はx86_64はバージョンが出てない。
arch -x86_64 node -v
arch: posix_spawnp: node: Bad CPU type in executable
arch -arm64 node -v
v22.13.1
動いてなかった人は両方ともバージョンが出る。
arch -x86_64 node -v
v22.13.1
arch -arm64 node -v
v22.13.1
上記の結果がわかったので、nodeenvでインストールされていたnodeを削除し、voltaから再インストールしたら解消しました。
buildなどが遅いのでdockerなどはあまり使わないようにしてましたが、こういう時は面倒ですね。
Discussion