1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【勉強記録】Mac(Apple Silicon)でRails開発環境をarm64ネイティブで構築する【Rosetta不使用】

1
Last updated at Posted at 2026-02-25

はじめに

image.png

記事をご覧いただきありがとうございます。

現在、Mac M4(Apple Silicon)環境でRails開発を始める準備を進めています。

その際にいただいた指示がこちらでした。

  • arm64で構築する
  • Rosettaは使わない
  • Ruby 3.4.3を入れる
  • Rails(最新)を入れる
  • PostgreSQL / Nodeを入れる
  • rbenvまたはmiseでバージョン管理
  • AIツール(Claude / ChatGPT)を活用できるようにする

この記事では、

Mac M4でRails開発環境をarm64ネイティブで構築するにあたり、自分なりに整理・理解した内容 をまとめます。


目次

  1. arm64とは何か
  2. なぜRosettaを使わないのか
  3. Rails開発に必要な依存関係の整理
  4. rbenvとmiseの比較検討
  5. 実際のセットアップ手順
  6. AIツールの使い分け

1. arm64とは何か

Mac Mシリーズ(M1〜M4)は、Appleが設計した Apple Silicon を搭載しています。

重要なのは、CPUアーキテクチャの違いです。

世代 アーキテクチャ
Intel Mac x86_64
Apple Silicon arm64

Apple SiliconはIntelとは設計思想の異なるCPUです。

そのため、

  • Intel向けにビルドされたソフトウェア
  • arm64向けにビルドされたソフトウェア

は内部的に別物として扱われます。

この違いを理解せずに環境を構築すると、
x86_64とarm64が混在し、原因不明のエラーが発生する可能性があります。


2. なぜRosettaを使わないのか

Rosettaとは、

Intel向けアプリケーションをApple Silicon上で動作させるための変換レイヤー

です。

非常に優秀な仕組みですが、

  • ネイティブ実行ではない
  • Intel版とARM版が混在するリスクがある
  • 将来的にはARMネイティブが前提になる

といった点を踏まえ、

最初からarm64ネイティブで構築した方が、再現性・保守性が高い

という判断だと理解しました。


3. Rails開発に必要な依存関係の整理

今回の構成における主要コンポーネントは以下の通りです。

  • Ruby(実行環境)
  • Bundler(Gem管理)
  • Rails(フレームワーク)
  • PostgreSQL(データベース)
  • Node(JavaScriptビルド用)
  • Xcode Command Line Tools(ネイティブ拡張ビルド用)
  • Homebrew(パッケージ管理)

Rubyのネイティブ拡張やPostgreSQLのビルドが絡むため、
arm64で統一することが重要になります。


4. rbenvとmiseの比較検討

バージョン管理ツールとして候補に挙がったのが以下です。

  • rbenv
  • mise
項目 rbenv mise
Ruby管理
Node管理 ×
複数言語管理 ×

今回の構成では、

  • Ruby
  • Node

両方を管理する必要があるため、

複数言語を一元管理できるmiseを採用するのが合理的

だと理解しました。

将来的にその他ツールを導入する場合にも拡張性があります。


5. 実際のセットアップ手順

1. Xcode Command Line Tools

xcode-select --install

2. Homebrew(arm64版)

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

3. mise

brew install mise

4. Ruby 3.4.3

mise use -g ruby@3.4.3

5. Bundler / Rails

gem install bundler
gem install rails

6. PostgreSQL

brew install postgresql

7. Node

mise use -g node@20

Rails起動確認

rails new プロジェクト名 -d postgresql
cd プロジェクト名
bin/rails db:create
bin/rails s

http://localhost:3000 にアクセスし、Railsの初期画面が表示されることを確認しました。

6. AIツールの使い分け

開発ではGitHub Copilotを使用していますが、
エディタ内だけでは作業領域が狭く感じたため、Claude Codeの導入も指示されました。

Claude Code

  • コマンド生成
  • エラー原因の分析
  • ログ解釈

ChatGPT

  • ツール比較検討
  • 要件整理

Copilot

  • コード補完
  • Rails構成の補助

実行はClaude、整理はChatGPT、補完はCopilotという役割分担で開発を進めています。


本記事が、同様の環境構築を行う方の参考になれば幸いです。
最後まで読んでいただきありがとうございました。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?