« 秋の味覚 | Main | JavaでWebDAVクライアントを実装してみる »

2010.10.03

ApacheとSubversionの両方をビルドする

ApacheのWebDAVでの容量制限 において、初めてApacheをソースコードからビルドしてみたのですが、思わぬところで落とし穴にはまってしまいました。

現象としては、「Subversionでロックを取得する運用にしている場合、コミット時にロックの開放に失敗して結果としてコミットも失敗してしまう」という状況。

Apacheのエラーログには、以下のようなメッセージが出力されています。

Could not MERGE resource
An error occurred while committing the transaction.
Cannot verify lock on path (リソースのパス) no matching lock-token available

さてさてさて・・・いろいろと調べてみると、SubversionとApacheで使用するAPRのバージョンが違っていると、上手く動かないことがあるらしい(参照したページはメモってなかったのですが、そんな感じのことが記載されていました)。他のページなどをみると、APRのバージョンが違うと、そもそも動かない(コミット時だけの問題ではない)ようなのですが、とりあえず、もう一度Apache/Subversionをコンパイルし直してみることに。

参考資料
 ・Subversionをソースからインストール
 ・Subversionコンパイル方法
 ・コンパイルとインストール

作業手順
実際には試行錯誤しながらいろんな作業を行ったため、どの作業が必要で、どの作業が不要か、精査しきれておりません(苦笑)。

・ApacheのConfigure:--with-ldap および --with-included-apr オプションを追加する。

# ./configure --enable-so --enable-mods-shared=all --with-ldap --enable-ssl=shared --enable-suexec=shared --enable-proxy=shared --enable-cache=shared --enable-disk-cache=shared --enable-file-cache=shared --enable-mem-cache=shared --enable-authnz-ldap=shared --enable-ldap=shared --with-included-apr

 --with-ldap の指定を忘れると、LDAP関連のモジュールをビルドする際にエラーが発生してしまいます(configureは通るのですが、makeの際にエラーが発生する)。

・SubversionのConfigure:--with-apr および --with-apr-util オプションを追加。他のサイトに習って、 --with-ssl オプションも付加してみましたが、効果があるのかどうかは不明。

# ./configure --with-apxs=/usr/local/apache2/bin/apxs --with-apr=/usr/local/apache2/bin/apr-1-config --with-apr-util=/usr/local/apache2/bin/apu-1-config --with-ssl

ちなみに、他に、aprやapr-utilのmakeも別途行っていたりしますが、Apache本体で--with-included-aprを指定した場合、個別のmakeは不要なのかな、と思ったりもします。

その他参考資料など
Apache 2.2.4 configureでエラー
Apacheのconfigure時にAPR-Utilでエラーが出る
Linux Apache2.2 OpenLDAP 連携
Apache22のBasic認証をLDAPで
・apr-utilを個別にmakeする場合、--with-ldap=yesオプションを指定してconfigureを実行する必要があるかもしれません。

./configure --prefix=/usr/local/apr-util-httpd/ --with-apr=/usr/local/apr-httpd/ --with-ldap=yes

|

« 秋の味覚 | Main | JavaでWebDAVクライアントを実装してみる »

Subversion・Trac・etc.」カテゴリの記事

Comments

Post a comment



(Not displayed with comment.)


Comments are moderated, and will not appear on this weblog until the author has approved them.



TrackBack

TrackBack URL for this entry:
http://app.cocolog-nifty.com/t/trackback/3959/49607414

Listed below are links to weblogs that reference ApacheとSubversionの両方をビルドする:

« 秋の味覚 | Main | JavaでWebDAVクライアントを実装してみる »