標籤:centos openssl 編譯安裝 out range of signed 32bit displacement md5-x86_64.s:41: error: 0xd76aa478 out range of signed 32bit displacement
一、系統內容
作業系統:centos6.4 x86_64
openssl版本:openssl-0.9.8e
二、安裝過程
# tar zxvf openssl-0.9.8e.tar.gz# cd openssl-0.9.8e# ./config shared zlib# make
報錯:
md5-x86_64.s:41: Error: 0xd76aa478 out range of signed 32bit displacementmd5-x86_64.s:50: Error: 0xe8c7b756 out range of signed 32bit displacementmd5-x86_64.s:68: Error: 0xc1bdceee out range of signed 32bit displacementmd5-x86_64.s:77: Error: 0xf57c0faf out range of signed 32bit displacementmd5-x86_64.s:95: Error: 0xa8304613 out range of signed 32bit displacementMany more errors like this.
解決方案:
#vim openssl-0.9.8e/crypto/md5/asm/md5-x86_64.pl
在
sub round1_step
{ my ($pos, $dst, $x, $y, $z, $k_next, $T_i, $s) = @_;
後面加入:
+ $T_i = unpack("l",pack("l", hex($T_i))); # convert to 32-bit signed decimal
類似地,在sub round2_step, sub round3_step 和 sub round4_step相應的位置都加上這行
重新編譯安裝,成功!
本文出自 “兵臨城下” 部落格,請務必保留此出處http://308107405.blog.51cto.com/6396647/1537551