- PR -

【libssh2】configureに失敗します。

1
投稿者投稿内容
UmJammer
会議室デビュー日: 2007/09/29
投稿数: 2
投稿日時: 2007-09-29 14:13
はじめまして。

PHPでSSH2関数を利用するためにlibssh2をインストールしたいのですが、下記の
エラーでconfigureに失敗してしまします。

configure: error: Cannot find OpenSSL's libcrypto

・OS:CentOS4
・configureのオプションは設定していません。
・yumにてopenssl、openssl-devel(0.9.7a-43.16)がインストール済みです。

解決方法を存知の方がいらっしゃいましたら、ご教授願いたくよろしくお願いいたします。
あんとれ
ぬし
会議室デビュー日: 2004/01/14
投稿数: 556
投稿日時: 2007-09-29 20:37
libssh2-0.17 で configure スクリプトを追って、
どのように libcrypto が存在するディレクトリを検索しているのか確認してみました。

1. --with-openssl=<path_to_openssl> が指定されている場合、

<path_to_openssl>/lib

2. pkg_config が存在する場合、

pkg_config --libs openssl の結果

3. /usr/local/ssl/lib /usr/local/lib /usr/lib /usr/local/openssl/lib のうち、

libcrypto.a と libcrypto.so の両方が存在するディレクトリ

この順に検索して、どれにもマッチしない場合、

configure: error: Cannot find OpenSSL's libcrypto

が発生するようです。

3 番目のlibcrypto.a と libcrypto.so の「両方」の存在をチェックしているところがポイントのようですね。


[ メッセージ編集済み 編集者: あんとれ 編集日時 2007-10-01 15:49 ]
UmJammer
会議室デビュー日: 2007/09/29
投稿数: 2
投稿日時: 2007-09-29 22:04
ご回答ありがとうございます。

引用:

あんとれさんの書き込み (2007-09-29 20:37) より:

3. /usr/local/ssl/lib /usr/local/lib /usr /usr/local/openssl/lib のうち、

libcrypto.a と libcrypto.so の両方が存在するディレクトリ

この順に検索して、どれにもマッチしない場合、

configure: error: Cannot find OpenSSL's libcrypto

が発生するようです。

3 番目のlibcrypto.a と libcrypto.so の「両方」の存在をチェックしているところがポイントのようですね。



libcrypto.a、libcrypto.so は /usr/lib64 にありました。
ご指摘を参考に /usr/local/lib にそれぞれシンボリックリンクを作成し、再度 configure
を試みたところエラーなく完了しました。
大変参考になりました。ありがとうございました。
1

スキルアップ/キャリアアップ(JOB@IT)