人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

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

●質問者: DQNEO
●カテゴリ:コンピュータ
○ 状態 :終了
└ 回答数 : 1/1件

▽最新の回答へ

1 ● iwaim
●200ポイント ベストアンサー

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

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


DQNEOさんのコメント
おお!! yum install openldap-develをやったら解決しました! ありがとうございます!! でもどうして、openldap-develパッケージが原因だとわかったんでしょうか? 私はGoogleで2時間検索してもわからなかったので、私とiwaimさんとの差は何かと思いまして・・

y-kawazさんのコメント
慣れればすぐに分かりますが、cannot find -lldap からわかります。 -lldap は -l ldap を省略したオプションで ldap というライブラリを探したけど見つからない。という意味です。 ライブラリ系は通常 xxx-devel という名前のパッケージになっているので、ldap-devel どというパッケージがあるんじゃないかと検討がつきます。そこで以下を実行してそれっぽいのを探します。 yum list | grep ldap | grep devel すると openldap-devel というのが見つかるのでコレを入れればいいんだなと予想が付きます。 ソースからコンパイルする場合はこのようにライブラリが足りないという理由で失敗することが殆どで、足りないライブラリがあるときは大体上記の手順で見つかります。 ググっても見つからない理由は多分以下の2つでだいたい説明できそうです。 ・何のライブラリが足りないかは人によって環境が違うので、ググっても全く同じエラー(足りないものが同じ)の人は少ないから。 ・ライブラリが見つからないというエラーは、ソースからコンパイルする場合は本当によくあることだし、コンパイルが慣れてる人ならエラーメッセージを見れば何が足りないかはすぐわかることなので、わざわざネットにコピペ記事を書く人が居ない。

DQNEOさんのコメント
・-lldapは-l ldapの略 ・ldapはldap-develを探せ ・openldap-devel が見つかるのでそれを入れろ ・コンパイル失敗の原因は、ライブラリが足りないことが多い。 ありがとうございました! すっきりしました。
関連質問

●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ