MapServerのインストールの前に、ApacheとPostgreSQL、PHPがインストールされていることが必要です。まずは、MapServerで使用する各種ライブラリをインストールします。必須のライブラリはlibpng、freetype、GD、Zlibとそれらの開発パッケージです。これらのライブラリは大抵のディストリビューションの配布パッケージに含まれていると思うので、インストール方法については省略します。それ以外に推奨されるライブラリが3つあります。
1つめはPROJ.4という座標変換用ライブラリです。地球は丸いので、球の表面を平面上に描く(投影)と必ず誤差が出てしまいます。その誤差の影響範囲を制限するための色々な投影法があり、当然のように投影法によって緯度経度から平面の座標へのマッピング方法も異なってきます。その座標変換をこのライブラリを使用してMapServer内部で行います。
パッケージもしくはソースをダウンロードして、インストールします。ソースからインストールする場合、特に問題がなければ、./configure、make、make installでインストール完了です。
2つめはGEOSという、ある点がある領域に含まれているかどうかを判定するときに必要な解析を行うための幾何学解析ライブラリです。こちらもインストール時のオプションを特に指定する必要はありません。
最後はGDALというラスターデータフォーマットをサポートするためのライブラリです。ラスターデータというのは、BMPやJPEGなどの画像データのように、座標と数値(画像データの場合は色情報)を持ったデータのことを言います。
地理情報ではGeoTIFFなどがあります。このライブラリにはベクターデータフォーマットをサポートするOGRというライブラリも内包されています。パッケージもしくはソースをダウンロードして、インストールします。これも特に指定すべきオプションはありません。
これで、MapServerに必要なライブラリはインストールできました。今回はPostGISを使用して地図を描画するので、MapServerのインストールの前にPostGISをインストールします。
PostGISはソースからインストールするので、ソースをダウンロードしてください。解凍したらディレクトリに移動します。PostGISで推奨されているPROJ.4とGEOSはすでにインストールされているので、以下のようにインストールします。なお、pg_configのパスは適宜修正してください。
./configure --with-geos --with-proj⇒
--with-pgsql=/usr/local/pgsql/bin/pg_config
make
make install
これで準備が整ったので、MapServerをインストールします。MapServerは下記のWebサイトからソースをダウンロードしてインストールします。
インストールは以下のように行います。こちらもpg_config.php.httpdのパスを適宜修正してください。
./configure --with-proj --with-gdal --with-ogr
--with-geos --with-gd
--with-postgis=/usr/local/pgsql/bin/pg_config
--with-httpd=/usr/sbin/httpd
--with-php=/usr/local/include/php
make
makeを実行するとphp_mapscript.soというPHPエクステンションがmapscript/php3内に生成されるので、そのファイルをphp.iniもしくはPHPスクリプト内でdl()関数を呼び出してロードします。そうすると地図画像を生成するためのMapScriptを使用することができるようになります。
もし途中でエラーが発生してしまう場合、リンカのライブラリ検索パスの設定に/usr/local/libが含まれていないことが考えられます。/etc/ld.so.conf.d/などに設定ファイルを追加するなどして、リンカの設定を修正します。筆者の環境(Cent OS 4.3)では/etc/ld.so.conf.d/mapserver.confという以下を記述したファイルを追加した後で、ldconfigコマンドを実行することでエラーが修正されました。
/usr/local/lib
|