日本語入門macOSでのビルド

macOSでのビルド

macOS(特にM1/M2などのApple Silicon)でNextraサイトをビルドする際、特定のネイティブ依存関係の問題が発生することがあります。

一般的なエラー

npm run build または npm install を実行したときに、以下のようなエラーが表示されることがあります。

Module not found: Can't resolve '@napi-rs/simple-git-darwin-arm64'

あるいは、Cloudflare Pagesへのデプロイ時に EBADPLATFORM エラーが発生することもあります。

解決策

依存関係の修正

package-lock.json が原因でプラットフォーム間の不整合が起きることがあります。最も確実な修正方法は以下の通りです。

  1. package-lock.jsonnode_modules を削除する。
  2. キャッシュをクリアする: npm cache clean --force
  3. 再インストールする: npm install

Cloudflareデプロイ時の注意

macOSで開発している場合、生成された package-lock.json にMac用のバイナリ情報が含まれてしまい、Linux環境であるCloudflareでエラーになることがあります。

この場合の解決策は、Cloudflare側で npm install を使用するnpm ci ではなく)ことです。 ビルドコマンドを以下のように設定してください:

npm install && npm run build