CentOS5.3でSubversion1.7.5をconfigure & makeしたらエラーが出ました。

解決方法を教えてください。

(やりたいこと:svnクライアント1.7.5を入れたい。subversionサーバは特に必要ないです)

$ ./configure
$ make
[途中省略]
/usr/bin/ld: skipping incompatible /usr/lib/libldap.so when searching for -lldap
/usr/bin/ld: skipping incompatible /usr/lib/libldap.a when searching for -lldap
/usr/bin/ld: cannot find -lldap
collect2: ld returned 1 exit status
make: *** [subversion/libsvn_subr/libsvn_subr-1.la] Error 1

【環境】
CentOS release 5.3 (Final)
Linux 2.6.18-128.el5 #1 SMP Wed Jan 21 10:41:14 EST 2009 x86_64 x86_64 x86_64 GNU/Linux

回答の条件
  • 1人5回まで
  • 13歳以上
  • 登録:2012/05/19 19:38:00
  • 終了:2012/05/22 10:22:46

ベストアンサー

id:iwaim No.1

iwaim回答回数215ベストアンサー獲得回数192012/05/19 19:49:40スマートフォンから投稿

ポイント200pt

openldap-develパッケージをインストールすればそこは解決しそう。

最新版のSubversionをインストールしなくてもいいような気もしますが。

他1件のコメントを見る
id:y-kawaz

慣れればすぐに分かりますが、cannot find -lldap からわかります。
-lldap は -l ldap を省略したオプションで ldap というライブラリを探したけど見つからない。という意味です。
ライブラリ系は通常 xxx-devel という名前のパッケージになっているので、ldap-devel どというパッケージがあるんじゃないかと検討がつきます。そこで以下を実行してそれっぽいのを探します。
yum list | grep ldap | grep devel
すると openldap-devel というのが見つかるのでコレを入れればいいんだなと予想が付きます。

ソースからコンパイルする場合はこのようにライブラリが足りないという理由で失敗することが殆どで、足りないライブラリがあるときは大体上記の手順で見つかります。

ググっても見つからない理由は多分以下の2つでだいたい説明できそうです。
・何のライブラリが足りないかは人によって環境が違うので、ググっても全く同じエラー(足りないものが同じ)の人は少ないから。
・ライブラリが見つからないというエラーは、ソースからコンパイルする場合は本当によくあることだし、コンパイルが慣れてる人ならエラーメッセージを見れば何が足りないかはすぐわかることなので、わざわざネットにコピペ記事を書く人が居ない。

2012/05/20 19:28:20
id:DQNEO

・-lldapは-l ldapの略
・ldapはldap-develを探せ
・openldap-devel が見つかるのでそれを入れろ
・コンパイル失敗の原因は、ライブラリが足りないことが多い。

ありがとうございました!
すっきりしました。

2012/05/26 19:38:22

コメントはまだありません

この質問への反応(ブックマークコメント)

トラックバック

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません