Ubuntu 24.04でEmacs最新版をソースからインストールする(ネイティブコンパイル対応)

Ubuntu 24.04でEmacs最新版をソースからインストールする(ネイティブコンパイル対応)

こんにちは! この記事では、Ubuntu 24.04最新版のEmacsソースコードからインストールする手順をまとめます。 特に最近重要になっているネイティブコンパイル(Native Compilation)対応のビルド方法も含みます!

対象読者:Ubuntu 24.04を使っていて、apt版より新しいEmacsを使いたい人 難易度:中級(ビルド経験が少しでもあれば大丈夫!)

1. はじめに(apt版ではダメなの?)

Ubuntu 24.04のaptリポジトリにもEmacsはありますが、

  • バージョンが古いことがある
  • ネイティブコンパイル対応が不完全な場合がある

ため、ソースから自分でビルドすることで、

  • 最新版Emacs
  • ネイティブコンパイル対応
  • 起動・動作の高速化 が実現できます!

2. 必要な開発ツールをインストールする

まずはビルドに必要なツールとライブラリをまとめてインストールします。

sudo apt update
sudo apt install -y build-essential libgccjit-13-dev gcc-13 g++-13 \
libjansson-dev libjpeg-dev libpng-dev libtiff-dev libgif-dev libxpm-dev \
libncurses-dev libgtk-3-dev libxaw7-dev libxft-dev libmagickwand-dev \
libtree-sitter-dev librsvg2-dev

✏️ ポイント:

  • gcc-13 + libgccjit-13-dev が揃っていれば、ネイティブコンパイルが有効になります!
  • これにより、Emacsが内部的に高速な.elnファイルを生成できるようになります。

3. Emacsのソースコードを入手する

Emacs公式サイトから最新版ソースコードをダウンロードします。

上記リンクから

  • 最新版の .tar.gz ファイル(例:emacs-30.1.tar.gz) をダウンロードしてください。

ダウンロードしたら、ターミナルで解凍します。

cd ~/Downloads
tar xvf emacs-30.1.tar.gz
cd emacs-30.1

4. ビルド専用ディレクトリを作る(おすすめ)

ビルドファイルをソースと分けるため、専用ディレクトリを作ります。

mkdir build
cd build

これによりソースツリーがきれいなままビルドできます!

5. configureを実行(ビルド設定)

gcc-13を指定してネイティブコンパイルを有効化します。

CC=gcc-13 CXX=g++-13 ../configure --with-native-compilation

✅ 成功すれば最後に Configuration done. と表示されます。

6. make(コンパイル)

CPUコアをフル活用して高速ビルドします。

make -j$(nproc)

7. make install(インストール)

ビルドが完了したら、管理者権限でインストールします。

sudo make install

デフォルトでは /usr/local/bin/emacs にインストールされます。

8. インストール確認

インストールできたか確認しましょう。

emacs --version

例:

GNU Emacs 30.1

と出れば成功です!

9. インストール後のポイント

  • この手順でインストールしたEmacsは、ネイティブコンパイル(.elnファイル)対応版です。
  • Emacsの起動後、自動的に.elnファイルが生成されるため、起動・動作が非常に高速になります。
  • /usr/bin/emacs に古いapt版が残っていても、パス優先順位により /usr/local/bin/emacs が使われます。(通常問題なし)

📋 まとめ(コマンド一覧)

ステップコマンド例
パッケージインストールsudo apt install build-essential libgccjit-13-dev gcc-13 g++-13 ...
ソース解凍tar xvf emacs-30.1.tar.gz && cd emacs-30.1
ビルド用ディレクトリ作成mkdir build && cd build
configureCC=gcc-13 CXX=g++-13 ../configure --with-native-compilation
makemake -j$(nproc)
make installsudo make install
バージョン確認emacs --version

この記事はchatGPTを使用して書きました。筆者も実際にこの手順でインストールできたので大丈夫だと思いますが、もしビルドに失敗したなどがありましたら、コメントを残していただければ幸いです。