他のシステムで使用するにはビルドlibssl*
とバイナリが必要です。libcrypto*
これを行うために簡単なスクリプトを書いた。
#!/bin/bash
set -evx
OPENSSL_VERSION="1.0.2l"
TARGET=openssl-linux64
/bin/rm -fr $TARGET
curl -O -L http://www.openssl.org/source/openssl-$OPENSSL_VERSION.tar.gz
tar -xvzf openssl-$OPENSSL_VERSION.tar.gz
mv openssl-$OPENSSL_VERSION $TARGET
cd $TARGET
./Configure linux-x86_64 -shared
make
すべてがうまくいくようで、最終的に2つのライブラリができました。残念ながら彼らはlibssl.so.1.0.0
andと呼ばれますlibcrypto.so.1.0.0
。むしろ混乱しています...
これはちょうど混乱したバージョン管理ですか、それとも何が起こっていますか?
正確に何が生産されたのか、どうすればわかりますか?信じるべきですか?
重要な場合:私のシステムは「Linux 4.4.0-116-generic #140-Ubuntu SMP Mon x86_64 GNU/Linux」です。
ベストアンサー1
はい、そうです。パッケージのバージョンが1.0.2lであっても、ライブラリのバージョンは1.0.0です。すべてのバージョンが1.0だからです。
ライブラリのバージョンが定義されています。ここソースツリーのこの定義の上には、これをより詳細に説明するコメントがあります。
これがあなたの質問に答えることを願っています。