On 27/02/2019 17:22, Torrelli, Maxime wrote: > Hello, > > > > Sorry to send you again an email about the same subject but I really need some > help on this topic. I will try to give as much information I can. > > > > I am using WCECOMPAT tool to compile OpenSSL 1.1.1b for WINCE700 on a ARMV4I > CPU. We have to do this because the Long Time Support of OpenSSL 1.0.2 is ending > in December 2019. > *_Is VC-CE platform still supported ?_* > I can't answer your main question but can attempt this one. VC-CE is not a primary or a secondary supported platform: https://www.openssl.org/policies/platformpolicy.html Support has not been *removed* and we've not done anything to actively break it, but AFAIK no one on the dev team has access to that platform. Which puts it in the "Unknown" classification (or possibly "Community"). Matt > > > If so you will find below what I did : > > > > My computer : Windows 7 Enterprise N (32 bits) > > Visual Studio 2008 Professional Edition + Windows Embedded Compact 7.5.2884.0 > > > > *I. **WCECOMPAT Compilation* > > set LIB=C:\Program Files\Windows CE Tools\SDKs\SDK WEC7 for VPE420 > device\Lib\ARMV4I;C:\Program Files\Microsoft SDKs\Windows\v6.0A\Lib;C:\Program > Files\Microsoft Visual Studio 9.0\VC\ce\lib\ARMV4I;C:\Program Files\Microsoft > Visual Studio 9.0\VC\lib > > set INCLUDE=C:\Program Files\Windows CE Tools\SDKs\SDK WEC7 for VPE420 > device\Include\ARMV4I > > set OSVERSION=WCE700 > > set PLATFORM=VC-CE > > set TARGETCPU=ARMV4I > > set Path=C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE;C:\Program > Files\Microsoft Visual Studio 9.0\VC\ce\bin\x86_arm;%Path% > > set LIBPATH="C:\Program Files\Windows CE Tools\SDKs\SDK WEC7 for VPE420 > device\Lib\ARMV4I";C:\Program Files\Microsoft Visual Studio 9.0\VC\lib; > > > > (my WINCE700 SDK is called “SDK WEC7 for VPE420 device”) > > > > In a command prompt : > > - Perl config.pl > > - Nmake –f makefile > > > > The compilation is a success. > > > > *II. **OpenSSL Compilation* > > > > The I open another command prompt in the openssl-1.1.1b folder. > > > > · set OSVERSION=WCE700 > > · set PLATFORM=VC-CE > > · set TARGETCPU=ARMV4I > > · set LIB=C:\Program Files\Windows CE Tools\SDKs\SDK WEC7 for VPE420 > device\Lib\ARMV4I;C:\Program Files\Microsoft SDKs\Windows\v6.0A\Lib;C:\Program > Files\Microsoft Visual Studio 9.0\VC\ce\lib\ARMV4I;C:\Program Files\Microsoft > Visual Studio 9.0\VC\lib > > · set INCLUDE=C:\Program Files\Windows CE Tools\SDKs\SDK WEC7 for VPE420 > device\Include\ARMV4I;C:\Program Files\Microsoft Visual Studio > 9.0\VC\atlmfc\include;C:\Program Files\Microsoft Visual Studio > 9.0\VC\INCLUDE;C:\Program Files\Microsoft SDKs\Windows\v6.0A\include; > > · set Path=C:\Program Files\Microsoft Visual Studio > 9.0\Common7\IDE;C:\Program Files\Microsoft Visual Studio > 9.0\VC\ce\bin\x86_arm;%Path% > > · set LIBPATH=C:\Program Files\Windows CE Tools\SDKs\SDK WEC7 for VPE420 > device\Lib\ARMV4I;C:\Program Files\Microsoft Visual Studio 9.0\VC\lib;C:\Program > Files\Microsoft Visual Studio 9.0\VC\ce\lib\ARMV4I; > > · set WCECOMPAT=../wcecompat > > > > · perl Configure no-idea no-mdc2 no-rc5 no-asm no-ssl2 no-ssl3 VC-CE > > > > · nmake > > > > The output is the following : > > > > *Microsoft (R) Program Maintenance Utility Version 9.00.30729.01* > > *Copyright (C) Microsoft Corporation. All rights reserved.* > > * * > > * * > > *Microsoft (R) Program Maintenance Utility Version 9.00.30729.01* > > *Copyright (C) Microsoft Corporation. All rights reserved.* > > * * > > * * > > *Microsoft (R) Program Maintenance Utility Version 9.00.30729.01* > > *Copyright (C) Microsoft Corporation. All rights reserved.* > > > > * "C:\Strawberry\perl\bin\perl.exe" "-I." -Mconfigdata > "util\dofile.pl" "-omakefile" "crypto\include\internal\bn_conf.h.in" > > crypto\include\internal\bn_conf.h* > > * "C:\Strawberry\perl\bin\perl.exe" "-I." -Mconfigdata > "util\dofile.pl" "-omakefile" "crypto\include\internal\dso_conf.h.in" > > crypto\include\internal\dso_conf.h* > > * "C:\Strawberry\perl\bin\perl.exe" "-I." -Mconfigdata > "util\dofile.pl" "-omakefile" "include\openssl\opensslconf.h.in" > > include\openssl\opensslconf.h* > > * "C:\Program Files\Microsoft Visual Studio 9.0\VC\BIN\nmake.exe" > / depend && "C:\Program Files\Microsoft Visual Studio > 9.0\VC\BIN\nmake.exe" / _all* > > * cl /Zi /Fdossl_static.pdb /GF /Gy /MD /W3 /wd4090 /nologo /O1i > /I "." /I "include" -D_WIN32_WCE=700 -DUNDER_CE=700 -DWCE_PLATFORM_VC-CE -DARM > -D_ARM_ -DARMV4I -QRarch4T -QRinterwork-return -D"L_ENDIAN" -D"NO_CHMOD" > -D"OPENSSL_SMALL_FOOTPRINT" -D"OPENSSL_PIC" -D"OPENSSLDIR=\"C:\\Program > Files\\Common Files\\SSL\"" -D"ENGINESDIR=\"C:\\Program > Files\\OpenSSL\\lib\\engines-1_1\"" -D_WIN32_WCE=700 -DUNDER_CE=700 > -DWCE_PLATFORM_VC-CE -DARM -D_ARM_ -DARMV4I -QRarch4T -QRinterwork-return > -D"OPENSSL_SYS_WIN32" -D"WIN32_LEAN_AND_MEAN" -D"UNICODE" -D"_UNICODE" > -D"_CRT_SECURE_NO_DEPRECATE" -D"_WINSOCK_DEPRECATED_NO_WARNINGS" -D"NDEBUG" > -I"\../wcecompat/include" -c /Foapps\app_rand.obj "apps\app_rand.c"* > > *app_rand.c* > > *C:\openssl-1.1.1b\e_os.h(287) : warning C4005: 'open' : macro redefinition* > > * C:\wcecompat\include\io.h(43) : see previous definition of 'open'* > > *C:\openssl-1.1.1b\e_os.h(289) : warning C4005: 'close' : macro redefinition* > > * C:\wcecompat\include\io.h(45) : see previous definition of 'close'* > > *C:\openssl-1.1.1b\e_os.h(293) : warning C4005: 'unlink' : macro redefinition* > > * C:\wcecompat\include\io.h(50) : see previous definition of 'unlink'* > > * cl /Zi /Fdossl_static.pdb /GF /Gy /MD /W3 /wd4090 /nologo /O1i > /I "." /I "include" -D_WIN32_WCE=700 -DUNDER_CE=700 -DWCE_PLATFORM_VC-CE -DARM > -D_ARM_ -DARMV4I -QRarch4T -QRinterwork-return -D"L_ENDIAN" -D"NO_CHMOD" > -D"OPENSSL_SMALL_FOOTPRINT" -D"OPENSSL_PIC" -D"OPENSSLDIR=\"C:\\Program > Files\\Common Files\\SSL\"" -D"ENGINESDIR=\"C:\\Program > Files\\OpenSSL\\lib\\engines-1_1\"" -D_WIN32_WCE=700 -DUNDER_CE=700 > -DWCE_PLATFORM_VC-CE -DARM -D_ARM_ -DARMV4I -QRarch4T -QRinterwork-return > -D"OPENSSL_SYS_WIN32" -D"WIN32_LEAN_AND_MEAN" -D"UNICODE" -D"_UNICODE" > -D"_CRT_SECURE_NO_DEPRECATE" -D"_WINSOCK_DEPRECATED_NO_WARNINGS" -D"NDEBUG" > -I"\../wcecompat/include" /Zs /showIncludes "apps\app_rand.c" 2>&1 > > apps\app_rand.d* > > * cl /Zi /Fdossl_static.pdb /GF /Gy /MD /W3 /wd4090 /nologo /O1i > /I "." /I "include" -D_WIN32_WCE=700 -DUNDER_CE=700 -DWCE_PLATFORM_VC-CE -DARM > -D_ARM_ -DARMV4I -QRarch4T -QRinterwork-return -D"L_ENDIAN" -D"NO_CHMOD" > -D"OPENSSL_SMALL_FOOTPRINT" -D"OPENSSL_PIC" -D"OPENSSLDIR=\"C:\\Program > Files\\Common Files\\SSL\"" -D"ENGINESDIR=\"C:\\Program > Files\\OpenSSL\\lib\\engines-1_1\"" -D_WIN32_WCE=700 -DUNDER_CE=700 > -DWCE_PLATFORM_VC-CE -DARM -D_ARM_ -DARMV4I -QRarch4T -QRinterwork-return > -D"OPENSSL_SYS_WIN32" -D"WIN32_LEAN_AND_MEAN" -D"UNICODE" -D"_UNICODE" > -D"_CRT_SECURE_NO_DEPRECATE" -D"_WINSOCK_DEPRECATED_NO_WARNINGS" -D"NDEBUG" > -I"\../wcecompat/include" -c /Foapps\apps.obj "apps\apps.c"* > > *apps.c* > > *C:\openssl-1.1.1b\e_os.h(287) : warning C4005: 'open' : macro redefinition* > > * C:\wcecompat\include\io.h(43) : see previous definition of 'open'* > > *C:\openssl-1.1.1b\e_os.h(289) : warning C4005: 'close' : macro redefinition* > > * C:\wcecompat\include\io.h(45) : see previous definition of 'close'* > > *C:\openssl-1.1.1b\e_os.h(293) : warning C4005: 'unlink' : macro redefinition* > > * C:\wcecompat\include\io.h(50) : see previous definition of 'unlink'* > > *apps\apps.c(2596) : warning C4013: '_fdopen' undefined; assuming extern > returning int* > > *apps\apps.c(2596) : warning C4047: '=' : 'FILE *' differs in levels of > indirection from 'int'* > > *apps\apps.c(2614) : warning C4013: '_close' undefined; assuming extern > returning int* > > *apps\apps.c(2696) : warning C4013: 'GetStdHandle' undefined; assuming extern > returning int* > > *apps\apps.c(2696) : error C2065: 'STD_INPUT_HANDLE' : undeclared identifier* > > *apps\apps.c(2696) : warning C4047: 'initializing' : 'HANDLE' differs in levels > of indirection from 'int'* > > *apps\apps.c(2698) : error C2065: 'INPUT_RECORD' : undeclared identifier* > > *apps\apps.c(2698) : error C2146: syntax error : missing ';' before identifier > 'inputrec'* > > *apps\apps.c(2698) : error C2065: 'inputrec' : undeclared identifier* > > *apps\apps.c(2699) : error C2275: 'DWORD' : illegal use of this type as an > expression* > > * C:\Program Files\Windows CE Tools\SDKs\SDK WEC7 for VPE420 > device\Include\ARMV4I\windef.h(161) : see declaration of 'DWORD'* > > *apps\apps.c(2699) : error C2146: syntax error : missing ';' before identifier > 'insize'* > > *apps\apps.c(2699) : error C2065: 'insize' : undeclared identifier* > > *apps\apps.c(2700) : error C2275: 'BOOL' : illegal use of this type as an > expression* > > * C:\Program Files\Windows CE Tools\SDKs\SDK WEC7 for VPE420 > device\Include\ARMV4I\windef.h(162) : see declaration of 'BOOL'* > > *apps\apps.c(2700) : error C2146: syntax error : missing ';' before identifier > 'peeked'* > > *apps\apps.c(2700) : error C2065: 'peeked' : undeclared identifier* > > *apps\apps.c(2706) : error C2065: 'peeked' : undeclared identifier* > > *apps\apps.c(2706) : warning C4013: 'PeekConsoleInput' undefined; assuming > extern returning int* > > *apps\apps.c(2706) : error C2065: 'inputrec' : undeclared identifier* > > *apps\apps.c(2706) : error C2065: 'insize' : undeclared identifier* > > *apps\apps.c(2707) : error C2065: 'peeked' : undeclared identifier* > > * * > > *NMAKE : fatal error U1077: '"C:\Program Files\Microsoft Visual Studio 9.0\VC\ce\* > > *bin\x86_arm\cl.EXE"' : return code '0x2'* > > *Stop.* > > *NMAKE : fatal error U1077: '"C:\Program Files\Microsoft Visual Studio 9.0\VC\BIN* > > *\nmake.exe"' : return code '0x2'* > > *Stop.* > > * * > > Any guess or hint would be much appreciated. > > > > > > Greetings, > > * * > > *Maxime TORRELLI* > > Embedded Software Engineer > > > > *Conduent* > > Conduent Business Solutions (France) > > 1 rue Claude Chappe – BP 345 > 07503 Guilherand Granges Cedex > > >