好きな「お肉」は?

お世話になります。

apache をソースからインストールしなければならないのですが、以下のエラーが出ており、解決できません。お力をお借りできますでしょうか。

■エラー内容-------------------------------------------------
In file included from /usr/include/apr-1/apr_ldap.h:120,
from /home/***/httpd-2.2.6/include/util_ldap.h:31,
from exports.c:38:
/usr/include/apr-1/apr_ldap_init.h:112: error: expected declaration specifiers or '...' before 'LDAP'
In file included from /usr/include/apr-1/apr_ldap.h:121,
from /home/***/httpd-2.2.6/include/util_ldap.h:31,
from exports.c:38:
/usr/include/apr-1/apr_ldap_option.h:204: error: expected declaration specifiers or '...' before 'LDAP'
/usr/include/apr-1/apr_ldap_option.h:226: error: expected declaration specifiers or '...' before 'LDAP'
In file included from exports.c:38:
/home/***/httpd-2.2.6/include/util_ldap.h:82: error: 'LDAP_DEREF_NEVER' undeclared here (not in a function)
/home/***/httpd-2.2.6/include/util_ldap.h:83: error: 'LDAP_DEREF_SEARCHING' undeclared here (not in a function)
/home/***/httpd-2.2.6/include/util_ldap.h:84: error: 'LDAP_DEREF_FINDING' undeclared here (not in a function)
/home/***/httpd-2.2.6/include/util_ldap.h:85: error: 'LDAP_DEREF_ALWAYS' undeclared here (not in a function)
/home/***/httpd-2.2.6/include/util_ldap.h:90: error: expected specifier-qualifier-list before 'LDAP'
make[2]: *** [exports.lo] エラー 1
make[2]: ディレクトリ `/home/***/httpd-2.2.6/server' から出ます
make[1]: *** [all-recursive] エラー 1
make[1]: ディレクトリ `/home/***/httpd-2.2.6/server' から出ます
make: *** [all-recursive] エラー 1
------------------------------------------------------------------

OS:openSUSE 10.2
apacheのソース:httpd-2.2.6
ディレクトリ /home/***/下にソースを展開&makeしています。

openldapのインストールが必要かと思い、openldap2 2.3.27をインストールしてみましたが、変化がありませんでした。
また、configureオプションが問題かと思い、オプションを何もつけない状態で試しましたが、やはり同じエラーになります。

別環境のopenSUSE 10.0では、同じソースを使って問題なく、make、installができます。

原因として何が考えられますでしょうか。

よろしくお願いいたします。

A 回答 (1件)

必要なパッケージが何か足りないんじゃ?と思うがエラーメッセージだけではねぇ。



openSUSEにはパッケージマネージャは入っていないのだろうか?
何か理由があってソースからビルドするのだと思いますが、パッケージマネージャに一度何か足りないパッケージが無いか教えてもらうのはどうでしょうか。

 ・パッケージマネージャを起動して、apacheのインストールを選択
 ・パッケージマネージャ側で依存関係のチェックを行い、足りないパッケージを列挙すると思うので、そのパッケージ名とバージョンをメモ
 ・実際にダウンロードせずに直前でキャンセル

をすれば、何が足りないのかが分かるような気がするのですが。
(足りないものが見つかったなら、それはapache抜きでインストール)
足りないものが無いというなら、コンパイル時にそのライブラリにパスが通っていないとかの問題でしょうから、少なくとも今よりは問題箇所が正確に把握できるかと。
    • good
    • 0
この回答へのお礼

早速のご返答ありがとうございます。
openSUSEにはyastというパッケージマネージャが入っています。

パッケージマネージャを使用した、デフォルトのセッティングでのインストール時には特に依存関係エラーはなかった(あっても解決済みのはず)ですが、起動ユーザと、インストールディレクトリを現在稼動中のapacheとは別に指定したいため、ソースからビルドしています。

確かにライブラリにパスが通っていない可能性が大きそうですが・・・すみません、ライブラリを特定する方法やパスの指定方法が分かりません><;

ひとまず、apacheを2.0にしたところ問題ないようなので、そちらを使おうかと思っています。

お礼日時:2008/01/14 23:46

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


おすすめ情報