僕とコードとブルーハワイ

omega (@equal_001) の日記

Linux/UNIXの勉強メモ5 apache ソースコードを入手してビルド・インストール

Apacheyumを使わないでインストールする

 

Apacheを配置する場所は、FHS(Filesystem Hierarchy Standard)にのっとって、"/usr/local/src "に置くこととする。

Apacheの公式ページから、欲しいApacheバージョンのファイルのリンクをコピペする。

wgetコマンドで目的のファイルをダウンロードし、tarファイルを展開する。

# cd /usr/local/src

# wget http://ftp.tsukuba.wide.ad.jp/software/apache//httpd/httpd-2.4.10.tar.gz

# tar zxf httpd-2.4.10.tar.gz

 

展開されたフォルダへ移動。

# cd httpd-2.4.10

移動した先で、これからApacheを使えるように準備していく。

 

必要な手順などは、「INSTALL」と「README」を読むとわかると教えてもらった。

"/usr/local/src/httpd-2.4.10/" にあったINSTALLには、UnixWindowsのインストールの手引きが書いてあった。今回はUnixの方なのでそっちをみる。

 

Quick Start - Unix

---------------------

For complete installation documentation, see [ht]docs/manual/install.html or http://httpd.apache.org/docs/2.4/install.html

  $ ./configure --prefix=PREFIX

  $ make

  $ make install

  $ PREFIX/bin/apachectl start

※一部抜粋

この一番最初に書いてある「configure」というのは、ソフトウェアの依存関係を調べてくれるやつ。今回はApacheの依存関係を調べてくれる。そして、それらの情報をまとめた「Makefile」というのをつくってくれる。

configure の次にあるmakeコマンドでこのMakefileを実行する。configureとか便利なモノが無かった時代は、自分でMakefileを書いていたんだと。辛そうだけどいずれは通る道。

 

httpd-2.4.10

# ./configure

  :

configure: error: APR not found. Please read the documentation.

 

してみたけど、なにやら「APR」が見つからないと怒られた。結局は「apr」・「apr-util」と「pcre」が必要だと怒られた。

ちなみにApache2.4からソースに入ってないから、自分でとってこないといけないんだと。

aprとapr-utilはapache.orgから、pcreはpcre.orgからとってくる。

 

# cd /usr/local/src

apr

# wget http://ftp.meisei-u.ac.jp/mirror/apache/dist//apr/apr-1.5.1.tar.bz2

# tar jxf apr-1.5.1.tar.bz2

# cd apr-1.5.1

# ./configure

# make

# make install

 

apr-util

# wget http://ftp.meisei-u.ac.jp/mirror/apache/dist//apr/apr-util-1.5.4.tar.bz2

# tar jxf apr-util-1.5.4.tar.bz2

# cd apr-util-1.5.4 

# ./configure --with-apr=/usr/local/apr-1.5.1

# make

# make install

 

pcre

# wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.35.tar.bz2

# tar zxf pcre-8.35.tar.bz2

# cd pcre-8.35

# ./consigure

# make

# make install

 

/usr/local/src でインストール作業したあと、local/配下にさっきmake installしたaprとかがあった。そこにはbin/とか置いてあった。上手くできてる証拠だ。

/usr/local/bin ‐ 通信用語の基礎知識によると、自分でビルドしたものは/usr/local/binへ、システムの標準コマンドは/usr/binへ置くらしい。

 

気を取り直して、

httpd-2.4.10

# ./configure --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-pcre=/usr/local/pcre --enable-so

# make

# make install

 

apache2というものができているので、そっちに移動してちゃんど動いているか確認する。

# cd /usr/local/apache2

# /bin/apachectl start

 

なんかApacheから名前解決に失敗したと言われたが、ブラウザでlocalhostを確認するとIt Works!とでてくれた。一応Apacheは動いている?

 

 

次はPHPを入れる。