Компиляция 32-битного OpenSSL
От: VitKoff  
Дата: 05.04.16 07:50
Оценка:
Здравствуйте, возникла проблема с компиляцией 32-битной версии OpenSSL. После "make" выдает ошибку
make[2]: Entering directory '/home/tester/libs/openssl-1.0.2g/apps'
( :; LIBDEPS="${LIBDEPS:--L.. -lssl  -L.. -lcrypto -ldl}"; LDCMD="${LDCMD:-gcc}"; LDFLAGS="${LDFLAGS:--DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m32 -fPIC -DL_ENDIAN -O3 -fomit-frame-pointer -Wall -DOPENSSL_BN_ASM_PART_WORDS -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DRMD160_ASM -DAES_ASM -DVPAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM}"; LIBPATH=`for x in $LIBDEPS; do echo $x; done | sed -e 's/^ *-L//;t' -e d | uniq`; LIBPATH=`echo $LIBPATH | sed -e 's/ /:/g'`; LD_LIBRARY_PATH=$LIBPATH:$LD_LIBRARY_PATH ${LDCMD} ${LDFLAGS} -o ${APPNAME:=openssl} openssl.o verify.o asn1pars.o req.o dgst.o dh.o dhparam.o enc.o passwd.o gendh.o errstr.o ca.o pkcs7.o crl2p7.o crl.o rsa.o rsautl.o dsa.o dsaparam.o ec.o ecparam.o x509.o genrsa.o gendsa.o genpkey.o s_server.o s_client.o speed.o s_time.o apps.o s_cb.o s_socket.o app_rand.o version.o sess_id.o ciphers.o nseq.o pkcs12.o pkcs8.o pkey.o pkeyparam.o pkeyutl.o spkac.o smime.o cms.o rand.o engine.o ocsp.o prime.o ts.o srp.o ${LIBDEPS} )
make[2]: Leaving directory '/home/tester/libs/openssl-1.0.2g/apps'
make[2]: Entering directory '/home/tester/libs/openssl-1.0.2g'
Doing certs/demo
Segmentation fault
Segmentation fault
WARNING: Skipping duplicate certificate pca-cert.pem
Segmentation fault
WARNING: Skipping duplicate certificate dsa-pca.pem
Segmentation fault
WARNING: Skipping duplicate certificate ca-cert.pem
make[2]: Leaving directory '/home/tester/libs/openssl-1.0.2g'
make[1]: Leaving directory '/home/tester/libs/openssl-1.0.2g/apps'
making all in test...


...затем дальше продолжается компиляция. А уже после команды "make test"
testing blowfish in ofb64
../util/shlib_wrap.sh ./casttest
Makefile:201: recipe for target 'test_cast' failed
make[1]: *** [test_cast] Segmentation fault
make[1]: Leaving directory '/home/tester/libs/openssl-1.0.2g/test'
Makefile:460: recipe for target 'tests' failed
make: *** [tests] Error 2


На Ubuntu 14.04 x64, и 32 и 64 битные версии OpenSSL компилируются без проблем, при чем для построения 64 битной версии использую
./config --prefix=/home/tester/openssl-1.0.2g/install-x64

а для 32
./Configure linux-elf -m32 --prefix=/home/tester/openssl-1.0.2g/install-x32


Мне же необходимо собрать на Alpine Linux (для совместимости на любом ядре линукса), пробовал и на 32 битной версии Alpine собирать и на 64 битной и именно 32 битный OpenSSL не компилируется(так же пробовал разные версии OpenSSL). Не советуйте пожалуйста использовать другой дистрибутив линукса для компиляции. Заранее спасибо за дельные советы!
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.