連載
» 2000年07月13日 00時00分 公開

PHP4で作るWeb-DBシステム(2):入門編:PHP4での開発に必要なものを用意する (3/5)

[一志達也,株式会社東洋情報システム]

アプリケーションをインストールする2つの方法

 次はデータベースのインストールです。データベースは、PHPよりも先にインストールしなくてはなりません。その理由はPHPのインストールを行なうときに改めてご説明するとして、ここではLinuxや商用UNIX環境にアプリケーションをインストールする方法について解説しておこうと思います。

 Linuxや商用UNIX環境でも、Windows環境と同じく、アプリケーションのインストールはそのバイナリファイルをシステム上に配置することで行なわれます。Windows環境と違うところは、レジストリの登録のような作業が必要でないことです。そのため、基本的にはアプリケーションをインストールしても、システムを再起動する必要はありません。

 Linuxや商用UNIX環境にアプリケーションをインストールする場合には、大きく分けて以下の2つの方法が考えられます。

ソースコードからコンパイルしてインストール

 Linuxや商用UNIX用のアプリケーションの多くは、C言語を使って作成されています。したがって、C言語をコンパイルすることができれば、アプリケーションをインストールしようとしている環境に合わせたバイナリを作成することができるのです。商用アプリケーションであれば、そもそもソースコードが公開されていませんから、こうしたことはあり得ません。

 このようにソースコードを自分でコンパイルしてインストールするのは、オープンソースならではということができます。ソースコードをコンパイルするなどというと、難しいのではないかと思われるかもしれませんが、実際はそれほど難しい作業ではありません。一般に広く使われているアプリケーションであれば、簡単な質問に答えるだけで、自分の環境に合わせたコンパイルを行なうことができるように作られています。ソースコードにまで手を入れるような事態はおそらく発生しませから、一度はチャレンジしてみてください。失敗しても、作成したファイルを削除してしまえば、問題は全く起こりません。

 このあたりの詳細は、このあと実際にインストールする手順を紹介しますので、そちらで確認していただくといいでしょう。大抵のアプリケーションでは、おおむね以下のような手順でインストールを行ないます。

  1. ソースコードを解凍する
  2. 設定を行なう
  3. コンパイルする
  4. インストールする

バイナリパッケージを取得してインストール

 もう1つの方法は、自分の環境に合わせてコンパイルされたバイナリファイル(パッケージ)を入手して、簡単にインストールするものです。Linuxでは、各ディストリビューションごとにこうしたパッケージを管理するためのツールが用意されていているのが一般的です。Red Hat LinuxではRPM(Red Hat Package Manager)と呼ばれるツールを使います。

 パッケージそのものは、ディストリビュータのWebサイトなどで配布されていますし、ディストリビューションのCD-ROMの中にも収められているはずです。この方法の利点は、なんと言っても簡単にインストールできることですが、それ以外にもインストール済みのパッケージを容易に管理できることもあげられます。その代わりに、リリースされたばかりのアプリケーションはパッケージ化されるまで待つしかありませんし、細かな設定にも対応することはできません。

 やはり、できることならばソースコードからのインストールがおすすめです。

ソースコードからのインストールに必要なツール

 ソースコードをコンパイルしてアプリケーションをインストールするには、いくつかのツールをあらかじめ使える状態にしておかなくてはなりません。ここでは、それらのツールの役割と、確認方法を紹介します。

 これらのツールは、Linuxディストリビューションであればその中に含まれているはずです。もしもインストールされていないようならば、あらためてインストールしてください。OSをインストールする前であれば、これらのツールもインストールするようにして頂くといいでしょう。最近のディストリビューションでは、カスタムインストールを行なわないと、こうしたツールがインストールされないものも多いようです。最新版のアプリケーションをインストールしようという向きの方は、ソースコードからのインストールが必須となりますから、こうしたツールをあらかじめインストールするようにしてください。

 商用UNIX環境でも、こうしたツールはインストールされていないことが多くありますが、同様にインストールしておくようにしてください。Linuxと違って、商用UNIXではこうしたツールはCD-ROM上にも用意されていないのが一般的ですが、これらはすべてGNUツールですのでインターネット上などから無料で入手することが可能です。

■gcc
gccは、GNUの提供するCコンパイラです。コンパイラのバージョンは、新しいものに越したことはありませんが、それほど神経質になる必要もありません。インストールされていることを確認するには、「gcc -v」としてください。以下のようにメッセージが返ってくるようなら、インストールされていると判断することができます。

[root@cinderella /root]# gcc -v
Reading specs from /usr/lib/gcc-lib/i386-redhat-linux/egcs-2.91.66/specs
gcc version egcs-2.91.66 19990314/Linux (egcs-1.1.2 release)

ただし、ログインしている環境でパスが通っていないと、インストールされていても確認することはできません。「env」と入力して、「/bin」「/usr/bin」にパスが通っていることを確認しておくといいでしょう。

筆者のrootユーザーでenvと入力した結果
[root@cinderella /bin]# env
USERNAME=
HISTSIZE=1000
HOSTNAME=cinderella
LOGNAME=tatsuya
HISTFILESIZE=1000
MAIL=/var/spool/mail/tatsuya
TERM=vt100
HOSTTYPE=i386
PATH=/usr/local/bin:/bin:/usr/bin:/usr/X11R6/bin:/home/tatsuya/bin
HOME=/root
INPUTRC=/etc/inputrc
SHELL=/bin/bash
PS1=[\u@\h \W]\$
USER=tatsuya
BASH_ENV=/home/tatsuya/.bashrc
LC_ALL=ja_JP.ujis
LANG=ja_JP.ujis
OSTYPE=Linux
LINGUAS=ja_JP.ujis
SHLVL=2
_=/usr/bin/env

■make
これもGNUが提供するmakeを使います。商用UNIXでは、そのベンダーが提供するmakeがインストールされていますが、それとは別にGNUのmakeをインストールしてください。ベンダーの提供するmakeでは、うまくインストールできない可能性があります。インストールの確認は、「make -v」で行なえます。以下のようにメッセージが返ってくるようなら、インストールされていると判断することができます。

[root@cinderella /root]# make -v
GNU Make version 3.77, by Richard Stallman and Roland McGrath.
Copyright (C) 1988, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98
    Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.
Report bugs to <bug-make@gnu.org>.

■bison
bisonは、yaccの代わりに利用できる、「コンパイラのコンパイラ」です。英語では「parser generator」と表現されています。これを利用するのは、yaccよりもbisonの方が使いやすいためです。PostgreSQLでは、SQLパーサやecpgパーサなどで使われていますが、特に意識する必要はありません。インストールの最中に、勝手に利用されるだけです。

インストールの確認は、「bison --version」で行なえます。以下のようにメッセージが返ってくるなら、インストールされていると判断できます。

[root@cinderella /root]# bison --version
GNU Bison version 1.28

■flex
flexは、字句解析を行なうツールです。これも特に意識する必要はありませんが、PostgreSQLのインストールに必要なツールの1つです。インストールの確認は「flex --version」で行なえます。以下のようにメッセージが返ってくるなら、インストールされていると判断することができます。

[root@cinderella /root]# flex --version
flex version 2.5.4

■patch
その名の通り、アプリケーションにパッチを適用するために利用するツールです。パッチを適用することがないのであれば無用のツールですが、後々のことも考えれば用意しておく方がいいでしょう。これも商用のUNIXでは、ベンダーが提供するものが付属していますが、GNUの提供するものに置き換えてください。

インストールの確認は「patch -v」で行なえます。以下のようにメッセージが返ってくるなら、インストールされていると判断することができます。

[root@cinderella /root]# patch -v
patch 2.5
Copyright 1988 Larry Wall
Copyright 1997 Free Software Foundation, Inc.


This program comes with NO WARRANTY, to the extent permitted by law.
You may redistribute copies of this program
under the terms of the GNU General Public License.
For more information about these matters, see the file named COPYING.


written by Larry Wall with lots o' patches by Paul Eggert

■tar
tarは、Linuxや商用UNIX環境で広く用いられている、ファイル圧縮のツールです。配布されているソースコードは、tarを使って圧縮されていますので、それを展開するために必要となります。一般的には、tarに加えてgzip(gunzip)圧縮されていますので、gzipも同時に展開することのできるGNU tarを用意できると便利です。インストールの確認は「tar --version」で行なえます。以下のようにメッセージが返ってくるなら、インストールされていると判断することができます。

[root@cinderella /bin]# tar --version
tar (GNU tar) 1.13.11


Copyright 1988, 92,93,94,95,96,97,98, 1999 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.


Written by John Gilmore and Jay Fenlason.

■gzip(gunzip)
gzip(gunzip)も、先の説明の通り、ファイル圧縮のツールです。利用するときには、「gzip」と入力しても、「gunzip」と入力しても構いません。インストールの確認は「gzip -V」もしくは、「gunzip -V」で行なえます(Vは大文字であることに注意)。以下のようにメッセージが返ってくるなら、インストールされていると判断することができます。

[root@cinderella /bin]# gzip -V
gzip 1.2.4 (18 Aug 93)
Compilation options:
DIRENT UTIME STDC_HEADERS HAVE_UNISTD_H ASMV


[root@cinderella /bin]# gunzip -V
gunzip 1.2.4 (18 Aug 93)
Compilation options:
DIRENT UTIME STDC_HEADERS HAVE_UNISTD_H ASMV

 以上で、コンパイルによるアプリケーションのインストール環境が整っていることになります。では、実際のインストールを紹介しましょう。

Copyright © ITmedia, Inc. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。