Hello,
Can someone tell me the status of OpenSSL on Win64/IA64? I have made some
attempts to compile it with the latest WIN64 branch source snapshot but
didn't get very far. Searching the openssl-dev archives didn't turn up anything
that recent or helpful:
http://groups.google.ca/groups?hl=en&lr=&q=Win64&btnG=Search&meta=group%3Dmailing.openssl.dev
and there doesn't seem to be much activity on the WIN64 branch (though there
*is* the odd integration of changes from other dev branches).
Is there some other set of patches out there for building for Win64/IA64,
perhaps? Or some set of instructions that I am missing? Any help would be
appreciated.
Detail on my build attempt
--------------------------
I have attempted to cross-compile OpenSSL for Win64/IA64 (from a Win32 box)
using the latest BRANCH_WIN64 snapshot (openssl-WIN64-SNAP-20050317.tar.gz) and
could not. Trying with both
1. my environment setup for the Win64 compiler in the latest MS Platform SDK:
"C:\Program Files\Microsoft SDK\SetEnv.Bat" /SRV64 /RETAIL
2. my environment setup for the VS.NET 2003 compiler, a.k.a. Visual C++ 7.1:
"C:\Program Files\Microsoft Visual Studio .NET 2003\Vc7\bin\vcvars32.bat"
here is what I ran:
perl Configure VC-WIN64
perl util\mkfiles.pl >MINFO
perl util\mk1mf.pl no-asm dll VC-WIN64 >ms\ntdll.mak
nmake /f ms\ntdll.mak
With both configurations the compilation breaks on .\crypto\mem.c:
cl /Fotmp64dll\cryptlib.obj -Iinc64 -Itmp64dll /MD /W3 /WX /Ox /O2
/Ob2
/Gs0 /GF /Gy /nologo -DOPENSSL_SYSNAME_WIN64 -DWIN32_LEAN_AND_MEAN
-DL_ENDIAN -
DDSO_WIN32 /Fdout64dll/ -DOPENSSL_NO_KRB5 -D_WINDLL -D_DLL
-DOPENSSL_BUILD_SHLI
BCRYPTO -c .\crypto\cryptlib.c
cryptlib.c
cl /Fotmp64dll\mem.obj -Iinc64 -Itmp64dll /MD /W3 /WX /Ox /O2 /Ob2
/Gs0
/GF /Gy /nologo -DOPENSSL_SYSNAME_WIN64 -DWIN32_LEAN_AND_MEAN -DL_ENDIAN
-DDSO_
WIN32 /Fdout64dll/ -DOPENSSL_NO_KRB5 -D_WINDLL -D_DLL
-DOPENSSL_BUILD_SHLIBCRYP
TO -c .\crypto\mem.c
mem.c
crypto\mem.c(343) : error C2220: warning treated as error - no object file
gener
ated
crypto\mem.c(343) : warning C4028: formal parameter 2 different from
declaration
crypto\mem.c(343) : warning C4028: formal parameter 3 different from
declaration
NMAKE : fatal error U1077: 'cl' : return code '0x2'
Stop.
Hacking util\pl\VC-64.pl to drop the '/WX' option gets me a bit further.
...
c:\trentm\tmp\openssl-WIN64-SNAP-20050317\crypto\LPdir_win.c(36) : error
C2065: 'NAME_MAX' : undeclared identifier
...
Fixing that to FILENAME_MAX and importing <stdio.h> (I am guess this was the
intention):
...
c:\trentm\tmp\openssl-WIN64-SNAP-20050317\crypto\LPdir_win.c(97) : error
C2440:
'function' : cannot convert from 'WIN32_FIND_DATA' to 'LPWIN32_FIND_DATAA'
Fixing that and I get much further:
...
crypto\bn\bn_lib.c(798) : error C2371: 'BN_is_bit_set' : redefinition;
different basic types
inc64\openssl\bn.h(478) : see declaration of 'BN_is_bit_set'
Next:
...
c:\trentm\tmp\openssl-WIN64-SNAP-20050317\crypto\bn\bn_lcl.h(395) : error
C2146:
syntax error : missing ')' before identifier 'dl'
Hack around this:
...
crypto\rand\rand_win.c(616) : error C4235: nonstandard extension used :
'__asm'
keyword not supported in this product
Can't use X86 assembler on IA64, so skip the assembler version. This gets me to
the link, which fails with:
...
link /nologo /subsystem:console /machine:IA64 /opt:ref /dll
/out:out64dll\libeay64.dll /def:ms/LIBEAY64.def
@C:\DOCUME~1\trentm\LOCALS~1\Temp\nm6.tmp
LINK : fatal error LNK1104: cannot open file 'ms/LIBEAY64.def'
LINK : fatal error LNK1141: failure during build of exports file
NMAKE : fatal error U1077: 'link' : return code '0x475'
I don't really know where to go from here.
As I said above, any help would be appreciated.
Thanks,
Trent
--
Trent Mick
[EMAIL PROTECTED]
______________________________________________________________________
OpenSSL Project http://www.openssl.org
Development Mailing List [email protected]
Automated List Manager [EMAIL PROTECTED]