プロが教えるわが家の防犯対策術!

こんにちは。

まず、Apacheをインストールします。
tar zxvf apache1.3.33.tar.gz
cd apache1.3.33
./configure --enable-shared=max
make
make install

このあとに、mod_sslを追加しようと思いインストールします。
tar zxvf mod_ssl-2.8.24-1.3.33.tar.gz
cd mod_ssl-2.8.24-1.3.33
./configure --with-apache=../apache1.3.33 --enable-ssl=/usr/local --enable-shared=max
cd ../apache1.3.33
make
make certificate
make install

そうすると下記のエラーになってしまいます。
[root@localhost apache_1.3.33]# /usr/local/apache/bin/apachectl startssl
[Sat Sep 10 23:28:58 2005] [warn] Loaded DSO libexec/mod_mmap_static.so uses plain Apache 1.3 API, this module might crash under EAPI! (please recompile it with -DEAPI)
※途中削除
Syntax error on line 226 of /usr/local/apache/conf/httpd.conf:
Cannot load /usr/local/apache/libexec/mod_rewrite.so into server: /usr/local/apache/libexec/mod_rewrite.so: undefined symbol: dbm_fetch
/usr/local/apache/bin/apachectl startssl: httpd could not be started

Apacheが入ってない状態で、mod_sslをインストールすれば上手くいくのですが。
どうしてこういうエラーが出てしまうのでしょうか?

よろしくお願いします。

A 回答 (3件)

本当にこんなオプションでコンパイルしたんですか?


このオプションでは mod_mmap_static.so はインストールされないはずですが。

> ./configure --with-apache=../apache1.3.33 --enable-ssl=/usr/local --enable-shared=max

それに、configure オプションがおかしくないですか?
Apache 1.3.x では
--enable-module=ssl --with-ssl=/usr/local
だったように思いますが。

正しく configure しさえすれば、わざわざルールを設定したり、CFLAGS も -DEPAI をセットしなくても自動的に EAPI がセットされます。

この回答への補足

あ、Libexecの中ですね。
それでも入ってないですね。

補足日時:2005/09/12 11:32
    • good
    • 0
この回答へのお礼

お返事ありがとうございます。

ご指摘のとおり実施してみました。

cd mod_ssl
./configure --with-apache=../apache1.3 --enable-module=ssl --with-ssl=/usr/local --enable-shared=max
cd ../apache1.3
make
make certificate
make install

これでしても、やはり同じエラーが出てしまいます。
手順は書いてあるとおりしています。
mod_mmap_static.soは入っていません。
http_core.cとmod_so.cのみです。

と、さっきエラー出した状態でLinux自体のrbootをするとエラーは出なくなりましたが、SSLがインストールされていないぽいです。
/usr/local/apache/bin/apachectl restart
では設定は反映されないのでしょうか?

お礼日時:2005/09/12 11:30

”-DEAPI をつけてコンパイルしろ”ってコンパイラさんが言ってますね。


その通りにしないとコンパイルできません。

一般的には、”configureのオプションがおかしい又は足らない”って
事になるかな。

configure -help で指定可能なオプションが見られるはずです。

OSは?バージョンは何ですか?

この回答への補足

解決しました。

ここって初めて使うので閉める時に御礼を言う場所ってないみたいですね?
ですので、失礼ながらこちらの補足に詳細を書きたいと思います。

結論としまして、オプションはそれほど重要じゃありませんでした。
SSLがインストールされていないと思っていたのは、httpd.confが自動で変更されないだけで、httpd.confの設定さえきちんとすればSSLは使用できました。
Apacheが入ってない状態なら、SSLの設定は自動でされるのでそこは不思議でした。

あと、コンパイルエラーについてですが、あれはそのモジュールが使えないだけで、Apache自体は普通に動いてるので、エラーはいてたモジュールを使わないのであれば気にしなくてもいいらしいです。
とはいえ、色々やってるうちに解決方法がわかりました。
make cleanです。
最初にApacheをインストールしてたので、一度make cleanをしないと駄目だったようです。
もしくは、ソースを削除後もう一度tarファイルを解凍すれば問題ありませんでした。

殆ど初歩的なミスな感じでした…
ソースからのインストール経験が少なかったもので。

どうもありがとうございました。

補足日時:2005/09/12 21:13
    • good
    • 0
この回答へのお礼

昨日お返事したつもりしたが反映されていませんでした。

ヘルプを見ると
--enable-eapi-only
があったので、実施してみるとエラーは出なくなりました。
ですが、SSLがインストールできていません。
エラーが出ていたときもSSLのインストールはされていないようでした。

OSは、RedhatLinux9(会社)とFedoraCora4(自宅)です。

お礼日時:2005/09/12 11:10

このての質問で、エラーを省略するのは


質問者/回答する方にとっても、無意味な行為です。

質問する時は、エラーメッセージを省いちゃいけません。

残ったエラーには、
please recompile it with -DEAPI
って出てますが。
    • good
    • 0
この回答へのお礼

お返事ありがとうございます。

全部載せようとしましたが、800文字オーバーになって載せれませんでした。
削除したのは、モジュール違いで全部、「please recompile it with -DEAPI 」のエラーです。

EAPIじゃなくてDEAPIでコンパイルせよというエラーだとは思うのですが、configureのオプションがおかしいのでしょうか?

お礼日時:2005/09/11 17:43

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!