<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta name="Generator" content="Microsoft Word 12 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:Tahoma;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri","sans-serif";}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
p.MsoAcetate, li.MsoAcetate, div.MsoAcetate
        {mso-style-priority:99;
        mso-style-link:"Balloon Text Char";
        margin:0in;
        margin-bottom:.0001pt;
        font-size:8.0pt;
        font-family:"Tahoma","sans-serif";}
span.BalloonTextChar
        {mso-style-name:"Balloon Text Char";
        mso-style-priority:99;
        mso-style-link:"Balloon Text";
        font-family:"Tahoma","sans-serif";}
span.EmailStyle19
        {mso-style-type:personal-compose;
        font-family:"Calibri","sans-serif";
        color:windowtext;}
span.keyword
        {mso-style-name:keyword;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="EN-US" link="blue" vlink="purple">
<div class="WordSection1">
<p class="MsoNormal">Hello,<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">This is the first time I'm building OpenSSL for any platform (I'm pretty new to this solution).<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">I'm trying to build OpenSSL 1.1.0f library on ARM7 (backwards compatible, SDK version is ARM4) running Windows Embedded Compact 7.0. I'm hoping to implement a client interfacing web service requiring TLS 1.2 with the https connections.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">I'm following this instructions:<o:p></o:p></p>
<p class="MsoNormal"><a href="http://documentation.unified-automation.com/uasdkcpp/1.5.2/html/CompileOpenSSLCE.html">http://documentation.unified-automation.com/uasdkcpp/1.5.2/html/CompileOpenSSLCE.html</a><o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">wcecompat compatibility library is compiled successfully - I'm getting two libraries: wcecompat.lib and wcecompatex.lib.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Because with the 1.1.0 release the build process has changed I'm looking at this site as well:<o:p></o:p></p>
<p class="MsoNormal"><a href="https://stackoverflow.com/questions/39076244/why-there-is-no-ms-do-ms-bat-after-perl-configure-vc-win64a">https://stackoverflow.com/questions/39076244/why-there-is-no-ms-do-ms-bat-after-perl-configure-vc-win64a</a><o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Since I'm not sure where my problem is I will provide the list of steps I'm taking:<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">1. In Cygwin64 Terminal: tar –xvzf openssl-1.1.0f.tar.gz<o:p></o:p></p>
<p class="MsoNormal">2. In Visual Studio 2008 Command Prompt I'm changing directory to C:\cygwin64\home\myaccount\openssl-1.1.0f and entering the following:<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">set INCLUDE=C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\atlmfc\include;C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\INCLUDE;C:\Program Files\Microsoft SDKs\Windows\v6.0A\include;<o:p></o:p></p>
<p class="MsoNormal">set LIB=C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\ATLMFC\LIB;C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\LIB;C:\Program Files\Microsoft SDKs\Windows\v6.0A\lib;<o:p></o:p></p>
<p class="MsoNormal">set LIBPATH=C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\ATLMFC\LIB;C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\LIB;<o:p></o:p></p>
<p class="MsoNormal">set Path=C:\Program Files (x86)\Microsoft Visual Studio 9.0\Common7\IDE;C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\BIN;C:\Program Files (x86)\Microsoft Visual Studio 9.0\Common7\Tools;C:\Program Files (x86)\Microsoft Visual Studio
 9.0\VC\VCPackages;C:\Program Files\Microsoft SDKs\Windows\v6.0A\bin;C:\cygwin64\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">set OSVERSION=WCE700<o:p></o:p></p>
<p class="MsoNormal">set PLATFORM=VC-CE<o:p></o:p></p>
<p class="MsoNormal">set TARGETCPU=ARMV4I<o:p></o:p></p>
<p class="MsoNormal">set WCECOMPAT="C:\cygwin64\home\myaccount\wcecompat-master"<o:p></o:p></p>
<p class="MsoNormal">set LIB=C:\Program Files (x86)\Windows CE Tools\SDKs\CA_MM2_CE7\Lib\ARMv4I;C:\Program Files\Microsoft SDKs\Windows\v6.0A\Lib;C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\ce\lib\ARMV4I;C:\Program Files (x86)\Microsoft Visual Studio
 9.0\VC\lib<o:p></o:p></p>
<p class="MsoNormal">set INCLUDE=C:\Program Files (x86)\Windows CE Tools\SDKs\CA_MM2_CE7\Include\Armv4i;C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\atlmfc\include;C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\INCLUDE;C:\Program Files\Microsoft
 SDKs\Windows\v6.0A\include;<o:p></o:p></p>
<p class="MsoNormal">set Path=C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\ce\bin\x86_arm;C:\Perl64\site\bin;%Path%<o:p></o:p></p>
<p class="MsoNormal">set LIBPATH="C:\Program Files (x86)\Windows CE Tools\SDKs\CA_MM2_CE7\Lib\ARMv4I";C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\lib;C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\ce\lib\ARMV4I;<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">3. Configuring the make file with the following (full path to perl to make sure ActivePerl-5.24.0.2400 is used):<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">c:\Perl64\bin\perl Configure no-idea no-mdc2 no-rc5 no-asm no-ssl3 VC-CE<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Configuring OpenSSL version 1.1.0f (0x1010006fL)<o:p></o:p></p>
<p class="MsoNormal">    no-asan         [default]  OPENSSL_NO_ASAN<o:p></o:p></p>
<p class="MsoNormal">    no-asm          [option]   OPENSSL_NO_ASM<o:p></o:p></p>
<p class="MsoNormal">    no-crypto-mdebug [default]  OPENSSL_NO_CRYPTO_MDEBUG<o:p></o:p></p>
<p class="MsoNormal">    no-crypto-mdebug-backtrace [default]  OPENSSL_NO_CRYPTO_MDEBUG_BACKTRACE<o:p></o:p></p>
<p class="MsoNormal">    no-ec_nistp_64_gcc_128 [default]  OPENSSL_NO_EC_NISTP_64_GCC_128<o:p></o:p></p>
<p class="MsoNormal">    no-egd          [default]  OPENSSL_NO_EGD<o:p></o:p></p>
<p class="MsoNormal">    no-fuzz-afl     [default]  OPENSSL_NO_FUZZ_AFL<o:p></o:p></p>
<p class="MsoNormal">    no-fuzz-libfuzzer [default]  OPENSSL_NO_FUZZ_LIBFUZZER<o:p></o:p></p>
<p class="MsoNormal">    no-heartbeats   [default]  OPENSSL_NO_HEARTBEATS<o:p></o:p></p>
<p class="MsoNormal">    no-idea         [option]   OPENSSL_NO_IDEA (skip dir)<o:p></o:p></p>
<p class="MsoNormal">    no-md2          [default]  OPENSSL_NO_MD2 (skip dir)<o:p></o:p></p>
<p class="MsoNormal">    no-mdc2         [option]   OPENSSL_NO_MDC2 (skip dir)<o:p></o:p></p>
<p class="MsoNormal">    no-msan         [default]  OPENSSL_NO_MSAN<o:p></o:p></p>
<p class="MsoNormal">    no-rc5          [option]   OPENSSL_NO_RC5 (skip dir)<o:p></o:p></p>
<p class="MsoNormal">    no-sctp         [default]  OPENSSL_NO_SCTP<o:p></o:p></p>
<p class="MsoNormal">    no-ssl-trace    [default]  OPENSSL_NO_SSL_TRACE<o:p></o:p></p>
<p class="MsoNormal">    no-ssl3         [option]   OPENSSL_NO_SSL3<o:p></o:p></p>
<p class="MsoNormal">    no-ssl3-method  [default]  OPENSSL_NO_SSL3_METHOD<o:p></o:p></p>
<p class="MsoNormal">    no-ubsan        [default]  OPENSSL_NO_UBSAN<o:p></o:p></p>
<p class="MsoNormal">    no-unit-test    [default]  OPENSSL_NO_UNIT_TEST<o:p></o:p></p>
<p class="MsoNormal">    no-weak-ssl-ciphers [default]  OPENSSL_NO_WEAK_SSL_CIPHERS<o:p></o:p></p>
<p class="MsoNormal">    no-zlib         [default]<o:p></o:p></p>
<p class="MsoNormal">    no-zlib-dynamic [default]<o:p></o:p></p>
<p class="MsoNormal">Configuring for VC-CE<o:p></o:p></p>
<p class="MsoNormal">CC            =cl<o:p></o:p></p>
<p class="MsoNormal">CFLAG         =/W3 /WX /GF /Gy /nologo -DUNICODE -D_UNICODE -DOPENSSL_SYS_WINCE-DWIN32_LEAN_AND_MEAN -DL_ENDIAN -DDSO_WIN32 -DNO_CHMOD -DOPENSSL_SMALL_FOOTPRINT -D_WIN32_WCE=700 -DUNDER_CE=700 -DWCE_PLATFORM_VC-CE -DARM -D_ARM_ -DARMV4I
 -QRarch4T -QRinterwork-return -I$(WCECOMPAT)/include  /MD /O1i<o:p></o:p></p>
<p class="MsoNormal">SHARED_CFLAG  =<o:p></o:p></p>
<p class="MsoNormal">DEFINES       =DSO_WIN32 NDEBUG OPENSSL_THREADS OPENSSL_NO_STATIC_ENGINE OPENSSL<o:p></o:p></p>
<p class="MsoNormal">_PIC<o:p></o:p></p>
<p class="MsoNormal">LFLAG         =/nologo /opt:ref /subsystem:windowsce,7.00 /machine:THUMB<o:p></o:p></p>
<p class="MsoNormal">PLIB_LFLAG    =<o:p></o:p></p>
<p class="MsoNormal">EX_LIBS       =3<o:p></o:p></p>
<p class="MsoNormal">APPS_OBJ      =win32_init.o<o:p></o:p></p>
<p class="MsoNormal">CPUID_OBJ     =mem_clr.o<o:p></o:p></p>
<p class="MsoNormal">UPLINK_OBJ    =<o:p></o:p></p>
<p class="MsoNormal">BN_ASM        =bn_asm.o<o:p></o:p></p>
<p class="MsoNormal">EC_ASM        =<o:p></o:p></p>
<p class="MsoNormal">DES_ENC       =des_enc.o fcrypt_b.o<o:p></o:p></p>
<p class="MsoNormal">AES_ENC       =aes_core.o aes_cbc.o<o:p></o:p></p>
<p class="MsoNormal">BF_ENC        =bf_enc.o<o:p></o:p></p>
<p class="MsoNormal">CAST_ENC      =c_enc.o<o:p></o:p></p>
<p class="MsoNormal">RC4_ENC       =rc4_enc.o rc4_skey.o<o:p></o:p></p>
<p class="MsoNormal">RC5_ENC       =rc5_enc.o<o:p></o:p></p>
<p class="MsoNormal">MD5_OBJ_ASM   =<o:p></o:p></p>
<p class="MsoNormal">SHA1_OBJ_ASM  =<o:p></o:p></p>
<p class="MsoNormal">RMD160_OBJ_ASM=<o:p></o:p></p>
<p class="MsoNormal">CMLL_ENC      =camellia.o cmll_misc.o cmll_cbc.o<o:p></o:p></p>
<p class="MsoNormal">MODES_OBJ     =<o:p></o:p></p>
<p class="MsoNormal">PADLOCK_OBJ   =<o:p></o:p></p>
<p class="MsoNormal">CHACHA_ENC    =chacha_enc.o<o:p></o:p></p>
<p class="MsoNormal">POLY1305_OBJ  =<o:p></o:p></p>
<p class="MsoNormal">BLAKE2_OBJ    =<o:p></o:p></p>
<p class="MsoNormal">PROCESSOR     =<o:p></o:p></p>
<p class="MsoNormal">RANLIB        =true<o:p></o:p></p>
<p class="MsoNormal">ARFLAGS       =/nologo<o:p></o:p></p>
<p class="MsoNormal">PERL          =c:\Perl64\bin\perl.exe<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">THIRTY_TWO_BIT mode<o:p></o:p></p>
<p class="MsoNormal">BN_LLONG mode<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Configured for VC-CE.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">4. Compiling the library with the following:<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">nmake<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Microsoft (R) Program Maintenance Utility Version 9.00.30729.01<o:p></o:p></p>
<p class="MsoNormal">Copyright (C) Microsoft Corporation.  All rights reserved.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">        "c:\Perl64\bin\perl.exe" "-I." -Mconfigdata "util\dofile.pl"  "-omakefile" "crypto\include\internal\bn_conf.h.in" > crypto\include\internal\bn_conf.h<o:p></o:p></p>
<p class="MsoNormal">        "c:\Perl64\bin\perl.exe" "-I." -Mconfigdata "util\dofile.pl"  "-omakefile" "crypto\include\internal\dso_conf.h.in" > crypto\include\internal\dso_conf.h<o:p></o:p></p>
<p class="MsoNormal">        "c:\Perl64\bin\perl.exe" "-I." -Mconfigdata "util\dofile.pl"  "-omakefile" "include\openssl\opensslconf.h.in" > include\openssl\opensslconf.h<o:p></o:p></p>
<p class="MsoNormal">        "C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\BIN\nmake.exe" depend && "C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\BIN\nmake.exe" _all<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Microsoft (R) Program Maintenance Utility Version 9.00.30729.01<o:p></o:p></p>
<p class="MsoNormal">Copyright (C) Microsoft Corporation.  All rights reserved.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Microsoft (R) Program Maintenance Utility Version 9.00.30729.01<o:p></o:p></p>
<p class="MsoNormal">Copyright (C) Microsoft Corporation.  All rights reserved.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">        cl  /I "." /I "crypto\include" /I "include" -DDSO_WIN32 -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC "-DENGINESDIR=\"C:\\ProgramFiles\\OpenSSL\\lib\\engines-1_1\"" "-DOPENSSLDIR=\"C:\\Program Files\\Common
 Files\\SSL\"" /W3 /WX /GF /Gy /nologo -DUNICODE -D_UNICODE -DOPENSSL_SYS_WINCE -DWIN32_LEAN_AND_MEAN -DL_ENDIAN -DDSO_WIN32 -DNO_CHMOD -DOPENSSL_SMALL_FOOTPRINT -D_WIN32_WCE=700 -DUNDER_CE=700 -DWCE_PLATFORM_VC-CE -DARM -D_ARM_ -DARMV4I -QRarch4T -QRinterwork-return
 -I"C:\cygwin64\home\myaccount\wcecompat-master"/include  /MD /O1i /Zi /Fdossl_static -c /Focrypto\aes\aes_ige.obj "crypto\aes\aes_ige.c" aes_ige.c<o:p></o:p></p>
<p class="MsoNormal">C:\cygwin64\home\myaccount\openssl-1.1.0f\e_os.h(485) : error C2220: warning treated as error - no 'object' file generated<o:p></o:p></p>
<p class="MsoNormal">C:\cygwin64\home\myaccount\openssl-1.1.0f\e_os.h(485) : warning C4005: 'open' : macro redefinition<o:p></o:p></p>
<p class="MsoNormal">        C:\cygwin64\home\myaccount\wcecompat-master\include\io.h(25) : see previous definition of 'open'<o:p></o:p></p>
<p class="MsoNormal">C:\cygwin64\home\myaccount\openssl-1.1.0f\e_os.h(486) : warning C4005: 'fdopen' : macro redefinition<o:p></o:p></p>
<p class="MsoNormal">        C:\cygwin64\home\myaccount\wcecompat-master\include\io.h(38) : see previous definition of 'fdopen'<o:p></o:p></p>
<p class="MsoNormal">C:\cygwin64\home\myaccount\openssl-1.1.0f\e_os.h(487) : warning C4005: 'close' : macro redefinition<o:p></o:p></p>
<p class="MsoNormal">        C:\cygwin64\home\myaccount\wcecompat-master\include\io.h(27) : see previous definition of 'close'<o:p></o:p></p>
<p class="MsoNormal">C:\cygwin64\home\myaccount\openssl-1.1.0f\e_os.h(491) : warning C4005: 'unlink' : macro redefinition<o:p></o:p></p>
<p class="MsoNormal">        C:\cygwin64\home\myaccount\wcecompat-master\include\io.h(32) : see previous definition of 'unlink'<o:p></o:p></p>
<p class="MsoNormal">NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\ce\bin\x86_arm\cl.EXE"' : return code '0x2' Stop.<o:p></o:p></p>
<p class="MsoNormal">NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\BIN\nmake.exe"' : return code '0x2' Stop.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">This may be something simple but I use Visual Studio 2008 to build my code and manually setting up the build process is not simple for me. I would appreciate if someone could point me into a right direction. Thank you in advance.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">I also tried to build openssl-1.0.2l (following the same instructions). I went a little further seeing link errors and one lib (libeay32d.lib) generated but that's not an expected result.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Best regards,<o:p></o:p></p>
<p class="MsoNormal">Tom<o:p></o:p></p>
</div>
</body>
</html>