仕事で apacheのモジュールを使いそうだったので、ちょっと調べてみた。
と言う本を買い、試してみたところ、サンプルを動かすところまでは実に簡単だった。
その先は、APIのまともなリファレンスがないようなので、結構大変かも知れない。
とりあえず、FreeBSDの portsから入れた apache22だと、少し問題があるみたいだったので、修正方法を書いておく。
※ これは、portsのバージョンが上がれば修正されるかも知れない。
起きる問題は二つで、apxs -n -g でテンプレートを作成した場合に起きる。
make したときにエラーが出るのだが、makeを使わずに apxs -c でコンパイルする分には問題がない。
と言う本を買い、試してみたところ、サンプルを動かすところまでは実に簡単だった。
その先は、APIのまともなリファレンスがないようなので、結構大変かも知れない。
とりあえず、FreeBSDの portsから入れた apache22だと、少し問題があるみたいだったので、修正方法を書いておく。
※ これは、portsのバージョンが上がれば修正されるかも知れない。
起きる問題は二つで、apxs -n -g でテンプレートを作成した場合に起きる。
make したときにエラーが出るのだが、makeを使わずに apxs -c でコンパイルする分には問題がない。
- make すると、
"/usr/local/share/apache22/build/special.mk", line 26: Could not find /usr/local/build/rules.mk
と怒られる。これは、/usr/local/sbin/apxs の648行目を修正して、top_builddir=%PREFIX%
をtop_builddir=%PREFIX%/share/apache22
にしてやると良い。 - 上記を修正してmakeすると、今度は apr まわりがincludeできなくて怒られる。
こちらは、/usr/local/share/apache22/build/config_vars.mk の78行目を修正する。EXTRA_INCLUDES = -I$(includedir) -I. -I/opt/ports/www/apache22/work/httpd-2.2.2/srclib/apr/include -I/opt/ports/www/apache22/work/httpd-2.2.2/srclib/apr-util/include -I/usr/local/include -I/usr/include
↓EXTRA_INCLUDES = -I$(includedir) -I. -I${APR_INCLUDEDIR} -I${APU_INCLUDEDIR} -I/usr/local/include -I/usr/include
カテゴリ
Networkトラックバック(0)
このブログ記事を参照しているブログ一覧: apacheのモジュールで遊ぶ
このブログ記事に対するトラックバックURL: https://www.wizard-limit.net/cgi-bin/mt/mt-tb.cgi/1050
コメントする