2012-04-22 64 views
1

我想要的Solaris
9和10
下編譯oepnssl-1.0.0g,同時無選擇,但我也遇到過下面的麻煩,並且可能不會成功
構建。
請告訴我應該怎麼做。無法編譯的OpenSSL 1.0.0g從Solaris 9在無密碼的選項,10


+ /bin/bash ./Configure solaris64-sparcv9-cc 
--prefix=/SYM_BC/YASU/v11_enc_local.unix/make_openssl/openssl-1.0.1/openssl 
--openssldir=/SYM_BC/YASU/v11_enc_local.unix/make_openssl/openssl-1.0.1/openssl/openssl 
**no-camellia no-idea no-mdc2 no-rc5 no-ec no-ecdh no-ecdsa no-seed** 
Configuring for solaris64-sparcv9-cc 
no-camellia [option] OPENSSL_NO_CAMELLIA (skip dir) 

: 

kssl.h => ../include/openssl/kssl.h 
srtp.h => ../include/openssl/srtp.h 
ssltest.c => ../test/ssltest.c 
making links in engines... 
sh: syntax error at line 1: \`;' unexpected 
\*** Error code 2 
The following command caused the error: 
target=links; [ -z "" ] || for i in ; do (cd $i && echo "making $target 
in engines/$i..." && make -e TOP=../.. DIR=$i $target) || exit 1; done; 
make: Fatal error: Command failed for target \`links' 
Current working directory 
/SYM_BC/YASU/v11_enc_local.unix/make_openssl/openssl-1.0.1/engines 
*** Error code 1 
The following command caused the error: 
set -e; target=links; for dir in crypto ssl engines apps test tools; do 
if [ -d "$dir" ]; then (cd $dir && echo "making $target in $dir..." && 
TOP= && unset TOP ${LIB+LIB} ${LIBS+LIBS} ${INCLUDE+INCLUDE} 

: 

ENGINES_ASM_OBJ='' PERLASM_SCHEME='void' FIPSLIBDIR='' 
FIPSDIR='/usr/local/ssl/fips-2.0' FIPSCANLIB="${FIPSCANLIB:-}" 
THIS=${THIS:-links} MAKEFILE=Makefile MAKEOVERRIDES= TOP=.. DIR=$dir 
$target) || exit 1; fi; done 
make: Fatal error: Command failed for target `links' 
+ '[' yes = yes ']' 

回答

1

只要按下了同樣的問題。

下面是修復方法:您應該編輯engines/Makefile,第14行 - 在RECURSIVE_MAKE的定義中添加雙引號$(ENGDIRS)

當您提供參數no-ecConfigure,$(ENGDIRS)是空的且沒有雙引號時,我們有語法錯誤。

這裏是補丁:

--- engines/Makefile Tue Aug 24 23:46:58 2010 
+++ engines/Makefile.fixed  Sat May 5 19:16:42 2012 
@@ -11,7 +11,7 @@ 
AR=   ar r 
ENGDIRS= ccgost 

-RECURSIVE_MAKE=  [ -z "$(ENGDIRS)" ] || for i in $(ENGDIRS) ; do \ 
+RECURSIVE_MAKE=  [ -z "$(ENGDIRS)" ] || for i in "$(ENGDIRS)" ; do \ 
        (cd $$i && echo "making $$target in $(DIR)/$$i..." && \ 
        $(MAKE) -e TOP=../.. DIR=$$i $$target) || exit 1; \ 
       done; 
+0

非常感謝你。你的補丁對我來說非常有用! – bobyt 2012-05-10 06:21:01