2007年3月11日日曜日

Apacheのconfigure時にAPR-Utilでエラーが出る.

 ソースからSubversionを入れようと思い、元々入っていたRPMのSubversionを削除して、改めてSubversionのソースをインストールしてみました.
 ところが、インストール後Apacheを起動しようとすると、以下の様なエラーが発生.

[??@fedora httpd-2.2.4]# /usr/local/apache2/bin/apachectl start
httpd: Syntax error on line 54 of /usr/local/apache2/conf/httpd.conf: Cannot load /usr/local/apache2/modules/mod_dav_svn.so into server: /usr/local/apache2/modules/mod_dav_svn.so: undefined symbol: dav_register_provider

 PHP設定時の様に、SELinuxの設定が引っかかっているのかとも思いましたが、あの時は「Permission denied」とのエラーメッセージでしたので、今回はちょっと違う様です.
 そこで、WebDAVも有効にしてなかった事だし、Apache(Version 2.2.4)をmakeし直そうとconfigure…

[??@fedora]# ./configure --enable-so --enable-ssl --enable-dav


checking for APR-util... yes
configure: error: Cannot use an external APR-util with the bundled APR

 あれ?
 なんだ?
 先日FC6に乗り換えた際にApacheインストールしてから、特に何もいじってないのにエラーって…
 うーん.
 SubversionがAPR/APR-Utilに依存している事、エラーがAPR-Utilがらみである事から、Subversionのインストールに起因したエラーなんだと思います.
 色々調べてみると、元々Apache(httpd)にはAPRがバンドルされていて、通常はバンドルされているAPRが使用されるのですが、Subversionをインストールすると、この辺の扱いが変わってしまうのかも.
 で、その際に見つけたページが↓ここ.

 Apache 2.2.4 configureでエラー - おぼえがき

 ふーんふん.
 ナルホド.
 確かに「./configure --help」で確認すると

--with-included-apr Use bundled copies of APR/APR-Util

 と書いてあります.
 早速チャレンジ.

[??@fedora]# ./configure --enable-so --enable-ssl --with-included-apr --enable-dav

 これで無事configureもmakeもOKでした.
 先人のメモに感謝!

 …と、話は少し変わりますが、よく

[??@fedora]# ./configure --enable-shared=yes

 と言うオプションを付けてconfigureしてるサイトを見かけますが、apache(httpd)のconfigureヘルプを見ても「--enable-shared」なんて項目見当たらないんですよね…
 何で??
 内容的に見ると「--enable-so」と同じDynamic Shared Object周りの様ですが.

 こんな事書くと、「これだから初心者は…」と言われそうですw
 早く初心者の域から脱したい orz

 でも焦らず牛歩戦術続行中と言うか奮闘中.

0 件のコメント: