インストール(make install)する


図解60p「Linuxサーバー構築入門マニュアル」無料
登録10秒/自動返信でDL/合わなければ解除3秒

ソースコードで配布されるプログラムは、「configure」、「make」を
行い、最後の行程としてmakeにinnstallオプションを付けて
実際のインストールを行います。

このインストール作業はroot権限でなくても実行できますが、
インストール過程でroot権限が必要な処理が発生するとエラーに
なりますので注意が必要です。


■ インストール(make install)する
----------------------------------------------------------------------
[pakira@Tiger ~]$ su -  ←root権限にスイッチします。
パスワード:   ←rootパスワードを入力します(パスワードは表示されません)
[root@Tiger ~]# cd /usr/local/src/httpd-2.0.63 ←ディレクトリを移動します。
[root@Tiger httpd-2.0.63]# make install  ←インストールを実行します。
Making install in srclib
make[1]: ディレクトリ `/usr/local/src/httpd-2.0.63/srclib' に入ります
Making install in apr
make[2]: ディレクトリ `/usr/local/src/httpd-2.0.63/srclib/apr' に入ります
Making all in strings

(省略)

[PRESERVING EXISTING CGI SUBDIR: /usr/local/apache2/cgi-bin]
Installing header files
Installing man pages and online manual
Installing build system files
make[1]: ディレクトリ `/usr/local/src/httpd-2.0.63' から出ます
[root@Tiger httpd-2.0.63]#
----------------------------------------------------------------------
configureの時にも話しましたが、installオプションは、
Makefileに記述されたinstallというラベルから処理を開始しています。

これはUNIXシステムの慣習によるものですが、
中にはinstallではなく、setupなどの他のラベルに
なっているものあります。

その場合、「make setup」のように実行しなければならないので、
インストールを行う前には、事前にソースコードの含まれている
「README」を確認してインストールする必要があります。

また、インストールを実行する前に、事前にエラーが発生しないか、
テスト(インストールテスト)することも出来ます。
インストールテストは、makeコマンドにオプション「-n」と「install」を
付けて実行します。

■ インストールテスト(make -n install)する
----------------------------------------------------------------------
[root@Tiger httpd-2.0.63]# make -n install ←インストールテストを実行します。
otarget=`echo install-recursive|sed s/-recursive//`; \
list=' srclib os server modules support'; \
for i in $list; do \
if test -d "$i"; then \
target="$otarget"; \
echo "Making $target in $i"; \
if test "$i" = "."; then \
made_local=yes; \
target="local-$target"; \

(省略)

done; \
fi
make[1]: ディレクトリ `/usr/local/src/httpd-2.0.63' から出ます
[root@Tiger httpd-2.0.63]#
----------------------------------------------------------------------


さらに、過去にインストール実績があるプログラムや
メイク、インストールでテストが既に終了しているプログラムは
メイクとインストールを連続に実行することが出来ます。

■ メイクとインストールを連続に実行する
----------------------------------------------------------------------
[root@Tiger httpd-2.0.63]# make && make install ←連続実行します。
Making all in srclib
make[1]: ディレクトリ `/usr/local/src/httpd-2.0.63/srclib' に入ります
Making all in apr
make[2]: ディレクトリ `/usr/local/src/httpd-2.0.63/srclib/apr' に入ります
Making all in strings

(省略)

Installing header files
Installing man pages and online manual
Installing build system files
make[1]: ディレクトリ `/usr/local/src/httpd-2.0.63' から出ます
[root@Tiger httpd-2.0.63]#
----------------------------------------------------------------------
「&&」を使用して連続実行した場合、makeコマンドの実行でエラーが
発生した時は、処理が停止し、make installが実行されないため
安全に連続実行することができます。

また、この連続実行は対話式で実行することができないので、
インストールのためにroot権限が必要な行程がある場合は、
事前にroot権限になってから実行する必要があるので注意が必要です。


■ 関連記事
プログラムソース(ソースコード)を最適化する
メイク(make)する




無料プレゼント
図解60p「Linuxサーバー構築入門マニュアル」
独学で詰まる前に、“型(手順書)”で最初の環境構築をサクッと終わらせましょう。
登録10秒/自動返信でDL/合わなければ解除3秒
無料で受け取る ※メールアドレスだけでもOK(必須項目は最小限)

宮崎 智広

この記事を書いた人

宮崎 智広(みやざき ともひろ)

株式会社イーネットマーキュリー代表。現役のLinuxサーバー管理者として15年以上の実務経験を持ち、これまでに累計3,100名以上のエンジニアを指導してきたLinux教育のプロフェッショナル。「現場で本当に使える技術」を体系的に伝えることをモットーに、実践型のLinuxセミナーの開催や無料マニュアルの配布を通じてLinux人材の育成に取り組んでいる。

<<関連記事>>
・システムログの設定
・/etc/fstabファイル(ファイルシステムテーブル)
・Linuxのファイルシステムの作成
・ルートファイルシステム
・YUM(Yellow dog Updater Modified)

図解60pのLinux無料マニュアル
登録10秒/自動返信でDL
無料で受け取る