SLES11SP3でopensslを0.9.8jから0.50.1から1.0.2aにアップグレードします。

SLES11SP3でopensslを0.9.8jから0.50.1から1.0.2aにアップグレードします。

私のプログラムに動的に接続するには、sles11 sp3を実行しているサーバーでOPENSSLを0.9.8j-0.50.1 - > 1.0.2aにアップグレードする必要があります。

私のビルド環境(sles11sp3)をアップグレードする手順は次のとおりです。

1.公式ホームページからインストールパッケージをダウンロードしてください。https://www.openssl.org/source/そして以下のように

a) wgethttps://www.openssl.org/source/openssl-1.0.2a.tar.gz b)./config -fPIC 共有 --prefix=/usr --openssldir=/etc/ssl c)make d) make install INSTALL_PREFIX=/home/Release/openssl/ e)cd /home/Release/openssl/ d) ls -lf)cp -rf */

2. これで openssl バージョンを実行すると、次のように表示されます(予想)。

   OpenSSL> version
   OpenSSL 1.0.2a 19 Mar 2015
   OpenSSL> 

3.私のプログラムを(SNMPとCURLを使用して)コンパイルした後、以下の2つのコンパイル警告が表示されました。

/usr/lib64/gcc/x86_64-suse-linux/4.3/../../../../x86_64-suse-linux/bin/ld: 警告: libcrypto.so.0.9.8, /usr 必須/lib64/libnetsnmpagent.soはlibcrypto.so.1.0.0と競合する可能性があります。

  /usr/lib64/gcc/x86_64-suse-linux/4.3/../../../../x86_64-suse-linux/bin/ld: warning: libssl.so.0.9.8, needed by /usr/lib64/libcurl.so, may conflict with libssl.so.1.0.0

4. したがって、この警告を解決するには、次のように/usr/lib64ディレクトリに次のシンボリックリンクを作成します。

cd /usr/lib64 ln -sf libssl.so.1.0.0 libssl.so.0.9.8 ln -sf libcrypto.so.1.0.0 libcrypto.so.0.9.8

5. これでコンパイル警告は表示されず、ビルド rpm も生成されます (myprogram.rpm)。

6.同じsles11 sp3で実行されているエンタープライズサーバー(ここではプログラムを実行できます)で同じ手順(3回を除く)を実行しました。

rpm -ivh myprogram.rpm
   error:Failed dependencies:
   libcrypto.so.1.0.0()(64bit) is needed by myprogram
   libssl.so.1.0.0()(64bit) is needed by myprogram

私が間違っているか欠けている部分を提案してください。

関連情報