DebianでSubversion 1.5.4をビルド:RSA_newを含むライブラリが見つかりませんでした

StackOverflow https://stackoverflow.com/questions/274656

質問

私は長い間(限定されたアカウントで)Subversionを構築しようとしましたが、運はありませんでした:(

次の手順: http://wiki.dreamhost.com/Subversion_Installation

これを実行:

./configure --prefix=${RUN} --without-berkeley-db --with-ssl --with-zlib --enable-shared

このエラーを表示:

checking for library containing RSA_new... not found
configure: error: could not find library containing RSA_new
configure failed for neon

誰かに説明してもらえますか:

  1. これの考えられる理由
  2. それを回避する可能な方法
  3. オプション:これらのモジュールとその目的(Neon / RSA_new)

ありがとう!

ログファイルの内容:

neon config.logファイルから興味深い部分を見つけようとしています:

configure:27693: gcc -o conftest -g -O2   conftest.c  >&5
/tmp/ccazXdJz.o: In function `main':
/home/stpinst/soft/subversion-1.5.4/neon/conftest.c:93: undefined reference to `RSA_new'
collect2: ld returned 1 exit status
configure:27699: $? = 1
configure: failed program was:
...
| int
| main ()
| {
| RSA_new();
|   ;
|   return 0;
| }
configure:27742: gcc -o conftest -g -O2   conftest.c  -lcrypto  -lz >&5
/usr/bin/ld: cannot find -lcrypto
collect2: ld returned 1 exit status
configure:27748: $? = 1

-

役に立ちましたか?

他のヒント

  1. システムにlibcrypto.aとlibcrypto.soがありません
  2. libssl-devパッケージにあるインストールlibcryptoをインストールする必要があります( aptitude install libssl-dev
  3. Neonは、subversionに含まれるWebDAVライブラリです。 WebDAVは、Subversionがサポートするワイヤープロトコルの1つです(http :)。 RSAは暗号化アルゴリズムです。ネオン自体は実際には必要ありません。configureがそれを使用してlibcryptoが使用可能かどうかを判断するだけです。

ついに動作するようになりました。 どうやって: openssl-0.x.x.tar.gzをダウンロードして解凍し、cdします

(私にとって)のようにどこかにインストールします

$ ./config shared --prefix=$HOME/installs && make clean && make && make install

$  export CFLAGS= "-O2 -g -I/root/installs/include"
$  export CFLAGS="-O2 -g -I/root/installs/include"
$  export LDFLAGS="-L/root/installs/lib"
$  export CPP="gcc -E -I/root/installs/include"

サブバージョンとその依存関係をアンパックします

neonサブディレクトリに移動

$ ./configure --with-ssl=openssl --prefix=$HOME/installs && make clean && make && make install

ネオンディレクトリを削除

subversionディレクトリに移動

$ ./configure --with-ssl --prefix=$HOME/installs --with-neon=/root/installs/bin/neon-config && make clean && make && make install

注:--with-ssl = / root / installsまたはこれらの行に沿った何かを使用することにより、すべてのエクスポートなしで逃げることができる場合があります。

最初にOpenSSLをインストールするか、--without-sslを設定する必要があります(または、指示通りに進んでいる場合は--with-sslオプションを省略します)。

SSLをスキップする場合:

./configure --prefix=${RUN} --without-ssl

このエラーが表示されます:

checking for openssl/opensslv.h... no
configure: error: We require OpenSSL; try --with-openssl
configure failed for serf

行う場合:

 ./configure --prefix=${RUN} --with-openssl

警告が表示されます:

configure: WARNING: Unrecognized options: --with-openssl
...
configure: error: '--with-openssl requires a path to a directory'
configure failed for serf

:-s

SSLサポートを使用したSubversionのコンパイルを確認しましたか?次の変数が必要でしたプロセスを完了するには?

setenv CC "gcc -I/usr/local/ssl/include -L/usr/local/ssl/lib"
setenv CFLAGS "-O2 -g -I/usr/local/ssl/include"
setenv LDFLAGS "-L/usr/local/ssl/lib"
setenv CPP "gcc -E -I/usr/local/ssl/include"

そして、投稿 RSA_newを含むライブラリが見つかりませんでした 、ヘッダーがシステムにもインストールされていることを確認することをお勧めします(Debian-Ubuntu-Dapper-Beta2:" apt-get install libssl-dev")、または Martinのコメント:aptitude install libssl-dev。

要するに、ヘッダーが存在しないか、構成プロセス中に適切なパスにありません。

NB:共有ホストを使用しているため、いくつかのことができません。

発信

apt-get install libssl-dev

このエラーが表示されます:

E: Could not open lock file /var/lib/dpkg/lock - open (13 Permission denied)
E: Unable to lock the administration directory (/var/lib/dpkg/), are you root?

呼び出し     aptitude install libssl-dev

このエラーが表示されます:

E: Could not open lock file /var/lib/dpkg/lock - open (13 Permission denied) 
E: Unable to lock the administration directory (/var/lib/dpkg/), are you root

おわかりのように、私は完全に失われているので、これ以上の手持ちは大歓迎です! :)

ようやく" configure"を手に入れたと思う動作する部分。

まず、opensslをローカルに取得しました:

wget http://www.openssl.org/source/openssl-0.9.8a.tar.gz
tar zxvf openssl-0.9.8a.tar.gz
cd openssl-0.9.8a
./configure --prefix=${RUN}
make
make install

次に、そのフォルダーへの参照を使用してSubversionをビルドしました:

./configure --prefix=${RUN} --without-berkeley-db --with-openssl=$HOME/soft/openssl-0.9.8a

実際にこの警告が表示されました:

configure: WARNING: Unrecognized options: --with-openssl

今ではすべてをカバーしましたが、数分間コンパイルされますが、このエラーが表示されます:

link: warning: `/usr/lib/gcc/x86_64-linux-gnu/4.1.2/../../..//libsqlite                                                                        3.la' seems to be moved
libtool: link: warning: `/usr/lib/gcc/x86_64-linux-gnu/4.1.2/../../..//libsqlite                                                                        .la' seems to be moved
libtool: link: warning: `/usr/lib/gcc/x86_64-linux-gnu/4.1.2/../../..//libexpat.                                                                        la' seems to be moved
/usr/bin/ld: cannot find -lssl
collect2: ld returned 1 exit status
make[1]: *** [libserf-0.la] Error 1
make[1]: Leaving directory `/mnt/local/home/stpinst/soft/subversion-1.5.4/serf'
make: *** [external-all] Error 1

これは終わりのない話のようです...どこかで最新のバイナリをダウンロードできますか?

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top