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/그리고 아래와 같이

가) 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을 사용하여) 컴파일한 후 아래 두 가지 컴파일 경고가 표시되었습니다.

/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

내가 잘못하고 있거나 누락된 부분을 제안해 주세요.

관련 정보