Microsoft Windows での Apache のコンパイル

Apache のコンパイルをはじめる前に、多くの重要なポイントがあります。 始める前に、Microsoft Windows での Apache の使用を見てください。

Apache のコンパイルには適切にインストールされた Microsoft Visual C++ 5.0 または 6.0 が必要になります。ビルドはコマンドラインツール、 または Visual Studio 環境で可能です。それらのインストール方法の決定には、 VC++ のマニュアルを参考にしてください。コマンドラインでのビルド (たとえば nmake の使用)では、Program Files/DevStudio/VC/bin フォルダにある vcvars32.bat 及び Platform SDK の setenv.bat のファイルがコマンドラインツールの準備に必要になることについて、 特に注意してください。Makefile.win や Visual Studio IDE の InstallBin プロジェクトを使って Apache をインストールする場合は、 awk ユーティリティも必要になります。

まず、IDE を使うつもりならパスが通り、 DevStudio 環境が解釈できるところに awk.exe をインストールしてください。 Windowsで利用可能な awk は様々なバージョンがあります。 非常にインストールしやすいものが Brian Kernighan の http://cm.bell-labs.com/cm/cs/who/bwk/サイトから入手可能です。 このサイトからhttp://cm.bell-labs.com/cm/cs/who/bwk/awk95.exe をダウンロードした場合は、awk95.exe を awk.exe という名前で保存しなければなりません。

DevStudio は awk.exe がールメニューのプション以下の、 実行ファイルのディレクトリ設定にリストされた場所にある場合に限り、 見つけることに注意してください。必要に応じ、awk.exe のパスをこのリストに追加してください。

それから、適切なディレクトリに Apache を解凍してください。 コマンドラインプロンプトを開き、Apache 配布サブディレクトリ src に移動してください

Makefile.win ファイルには Apache の makefile の元となる指示が含まれています。WindowsNT で Apache をコンパイルするには、以下のコマンドのうちの1つを単に使ってください

これらはどちらも Apache をコンパイルします。 後者では、デバグ情報が出力されたファイルに含まれ、 それによりバグを見つけて問題を解決しやすくなります。

もし、"the name specified is not recognized..." のようなエラーが出た場合はまず、vcvars32.bat を実行する必要があります。 以下のコマンドを入力してください

  "c:\Program Files\DevStudio\VC\Bin\VCVARS32.bat"

(このコマンドは VC がインストールされたディレクトリに合わせて 調整する必要があります。)

Visual C++ 5.0 ユーザーで、かつ、最近のプラットフォーム SDK をインストールしている場合は、以下のコマンドを入力する必要があるでしょう (Platform SDK アップデートをインストールするディレクトリに合わせて 調整する必要があります)

  "c:\Program Files\Platform SDK\SETENV.BAT"

それから、再び nmake コマンドを試してください。

サポートされたすべての mod_isapi 機能を有効にするには Windows Platform SDK の更新が必要になることに注意してください。 Microsoft Visual C++ 5.0 とともに配布された SDK ファイルは無効です。 最近のアップデートがなされていない場合、Apache は MSVC++ 5.0 では、 mod_isapi 機能がいくつか使用不可になることを警告します。 アップデートに関しては http://msdn.micro soft.com/platformsdk/ で探してください。

Apache は、VC++ の Visual Studio 開発環境を使ってコンパイル することもできます。このプロセスを簡素化するために、Visual Studio workspace(Apache.dsw) は src フォルダにおいて提供されます。 この workspace は、完全な Apache のバイナリリリースに必要な .dsp プロジェクトの働きの全体のリストを説明します。 それらが適切な順序で確実にビルドされるために、 プロジェクトの間の依存関係が含まれます。 InstallBin は、他のすべてのプロジェクトをビルドし、 コンパイルされたファイルを適切な位置にインストールする、 トップレベルのプロジェクトです。

これらの .dsp プロジェクトファイルは Visual C++ 6.0 のフォーマットで配布されます。Visual C++ 5.0(97) は /ZI フラグを除いて認識します。VC 5.0 では /Zi フラグがこれに相当します。 Visual Studio 5.0 (97) の .dspファイルをすぐに準備するには、 src\helpers フォルダにて配布された perl スクリプトを使うことができます

  cd src\helpers
  cvstodsp5.pl

このコマンドは、Perl インタプリタがインストールされていて、 .pl のファイルタイプが登録されていると仮定します。変換された .dsp プロジェクトファイルのリストはそれらが変換されると、表示されます。 改訂されたプロジェクトファイルを提供するパッチを寄与するなら、 Visual Studio6.0 フォーマットにプロジェクトを戻すスクリプト dsp5tocvs.pl によってそれらを変換してください。

Apache.dsw 及び makefile.win によりビルドされたコアの .dsp プロジェクトは以下の通りです

さらに os\win32 サブディレクトリには、ApacheCore を必要とするオプションのモジュールすべてのプロジェクトファイルが含まれます。

support\ フォルダは、Apache ランタイムの一部ではないけれども、パスワードとログファイルを 管理するために、管理者により使用される追加のプログラムの プロジェクトファイルが含まれます。

Apache がコンパイルできたらサーバールートディレクトリにインストール する必要があります。デフォルトは現在のハードディスクのディレクトリ \Apache です。

自動的に c:\ServerRoot にファイルをインストールするには、以下の nmake コマンド(上部参照)の 1 つを使ってください。

インストールディレクトリは INSTDIR へのc:\ServerRoot 引数が与えられます (Apache を \Apache にインストールする場合は省略可)。

これにより以下がインストールされます

もし nmake を持っていないか、違うディレクトリにインストール したい場合は、必ず同様な命名体系を使ってください。

プロセスの簡素化のためすべてのプロジェクトの間の依存関係は Microsoft Visual Studio workspace ファイルにおいて定義されています

   src/Apache.dsw

このことは、より低位のソースは Visual Studio 内で再ビルドされることを保証します。最上位のプロジェクトは InstallBin であり、Makefile.win を実行してコンパイルされた実行ファイルと dll を移動します。InstallBin の設定で INSTDIR= を変更することにより、 一般タブの下にコマンドラインのエントリをビルドします。 InstallBin.dsp プロジェクト内のデフォルトは、src ツリーから 1 階層上 (..) です。InstallBin 設定を修正し、 INSTDIR= を目的のディレクトリへと編集してください。