bobyt
bobyt

Reputation: 13

Failed to compile openssl-1.0.0g with no-cipher option under Solaris 9, 10

I'm trying to compile oepnssl-1.0.0g with no- option under Solaris
9 and 10.
But I have encountered the below trouble, and it may be not successfully
build.
Please tell me how I should do.


+ /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 ']'  

Upvotes: 1

Views: 1105

Answers (1)

vond
vond

Reputation: 1948

Just hit the same problem.

Here is the fix: you should edit engines/Makefile, line 14 - add double quotes around $(ENGDIRS) in definition of RECURSIVE_MAKE.

When you provide parameter no-ec to Configure, $(ENGDIRS) is empty and without double quotes we have a syntax error.

Here is the patch:

--- 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;

Upvotes: 1

Related Questions