この内容は古いバージョンです。最新バージョンを表示するには、戻るボタンを押してください。
バージョン:2
ページ更新者:atom
更新日時:2026-05-17 06:28:43

タイトル: make install

Linuxでソースからソフトウェアをインストールする際に使うコマンドです。make でコンパイルしたファイルを、指定したインストール先のディレクトリにコピーする処理を行います。

基本

makeでコンパイルしたファイルをインストール先のディレクトリにコピーする。

インストール先はconfigureのprefixオプションで指定したディレクトリとなる。

典型的なソースビルド・インストール手順

Linuxでソースからソフトウェアを導入する一般的な流れは次の通りです。

# ソース取得・展開
$ tar xvzf hoge-1.0.tar.gz
$ cd hoge-1.0

# 1. configure(環境調査・Makefile生成)
$ ./configure --prefix=/usr/local/hoge

# 2. make(コンパイル)
$ make

# 3. make install(インストール)
$ sudo make install

prefix(インストール先)の指定

--prefix を指定しない場合の既定は通常 /usr/local です。

# 既定 (/usr/local 配下に展開)
$ ./configure

# 任意のディレクトリにインストール
$ ./configure --prefix=/opt/hoge

# ホームディレクトリにインストール(管理者権限不要)
$ ./configure --prefix=$HOME/local

権限とsudoの使い分け

  • /usr/local/opt などシステム配下に書く → sudo make install
  • ホーム配下 ($HOME/local 等) → make install(sudo不要)
  • /tmp や任意の場所に試しに置く → make DESTDIR=/tmp/stage install でステージング先を切り替え

アンインストール

Makefileに uninstall ターゲットが用意されていれば次のコマンドで取り消せます。

$ sudo make uninstall

用意されていない場合は、インストール時の出力を控えておく、または checkinstall のようなツールでパッケージ化するのが安全です。

失敗するときのチェック

  • 必要なコマンドが無い: gcc, make, 開発ツールチェイン未導入 → sudo yum install gcc make / sudo apt install build-essential
  • 依存ライブラリ不足: configure 段階で「... not found」と表示される。*-devel / *-dev パッケージを導入
  • 書き込み権限不足: 既定の /usr/local に書くには root権限が必要。sudo または --prefix でホーム配下を指定

関連コマンド

コマンド役割
./configure環境調査、Makefile 生成、オプション指定
makeコンパイル(既定ターゲットはall)
make installインストール
make cleanビルド成果物を削除
make distcleanconfigure結果も含めて削除
make uninstallインストールしたファイルを削除(用意されていれば)

注意点

  • 本番サーバーにはパッケージマネージャ経由(yum / apt)の方が管理が楽。make install の利用は最新版が必要な場合や独自パッケージのみに留めるのが安全
  • 同じソフトをパッケージ版とソース版で混在させない(依存関係が破綻する)
  • 本当に必要か再確認: sudo apt install foobrew install foo で済むことが多い

関連