目次
はじめに
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 / gunzip | gzip file.txt, gunzip file.gz |
bzip2 / bunzip2 | bzip2 file.txt, bunzip2 file.bz2 |
xz / unxz | xz file.txt, unxz file.xz |
tar | tar -xvzf, tar -xvjf, など |
unzip | unzip file.zip |
まとめ
| ステップ | コマンド例 |
|---|---|
| ① ソース入手 | git clone, tar, unzip |
| ② パッチ適用 | patch |
| ③ 設定 | ./configure |
| ④ ビルド | make |
| ⑤ インストール | sudo make install |
おわりに
ソースからビルドする手順をマスターすると、柔軟なソフトウェア運用が可能になります。興味がある方は、簡単なオープンソースプロジェクトをビルドして練習してみてください。
コメント