makeによるソースコードからのビルドとインストール完全ガイド

目次

はじめに

Linuxでは、バイナリパッケージ(例:.deb.rpm)を使わずにソースコードから直接ソフトウェアをビルドしてインストールすることがあります。これは以下のような場面で役立ちます:

  • 最新バージョンを使いたい
  • 特定の機能だけを有効にしたい
  • カスタム構成を行いたい

この記事では、gitで取得→展開→パッチ→configure→make→インストールまでの流れをステップごとに解説します。


1. ソースコードの入手

方法①:gitで取得する

git clone https://github.com/example/project.git
cd project

特定のバージョンタグを確認するには:

git tag -l
git checkout v1.2.3

方法②:アーカイブファイルをダウンロードする

一般的な形式:.tar.gz, .tar.bz2, .zip など
展開コマンド:

# tar.gz
tar -xvzf source.tar.gz

# tar.bz2
tar -xvjf source.tar.bz2

# zip
unzip source.zip

2. パッチを適用する(必要な場合)

パッチファイル(.patch.diff)は、元のソースコードに修正を加えるために使用されます。

patch -p1 < fix-bug.patch

-p1 は多くの場合で必要なオプションですが、パッチのパス階層により -p0, -p2 などに変えることがあります。


3. configure スクリプトでビルド設定

多くのプロジェクトは configure スクリプトを使って環境の確認と設定を行います。

./configure

オプションを付けるとカスタムビルドができます:

./configure --prefix=/opt/mysw --enable-feature-x --disable-feature-y
  • --prefix:インストール先ディレクトリ
  • --enable/--disable:機能の有効・無効

4. makeでビルド

make

CPUコア数を指定して高速化:

make -j$(nproc)

よくあるターゲット:

コマンド説明
makeソースをビルド
make installインストール(root権限必要)
make clean中間生成物を削除
make uninstallアンインストール(対応時)

5. make install でインストール

インストール先を指定している場合は、そのディレクトリへコピーされます。通常はroot権限が必要です。

sudo make install

アンインストール(対応している場合)

sudo make uninstall

※対応していないプロジェクトもあります。


6. インストール後の確認

パスを通す必要がある場合:

export PATH=/opt/mysw/bin:$PATH

または /etc/profile~/.bashrc に追記。


補足:よく使う圧縮・展開コマンドまとめ

コマンド使用例
gzip / gunzipgzip file.txt, gunzip file.gz
bzip2 / bunzip2bzip2 file.txt, bunzip2 file.bz2
xz / unxzxz file.txt, unxz file.xz
tartar -xvzf, tar -xvjf, など
unzipunzip file.zip

まとめ

ステップコマンド例
① ソース入手git clone, tar, unzip
② パッチ適用patch
③ 設定./configure
④ ビルドmake
⑤ インストールsudo make install

おわりに

ソースからビルドする手順をマスターすると、柔軟なソフトウェア運用が可能になります。興味がある方は、簡単なオープンソースプロジェクトをビルドして練習してみてください。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

コメント

コメントする

目次