Prepare for 1.0.2v-dev
[openssl.git] / INSTALL.W64
1
2  INSTALLATION ON THE WIN64 PLATFORM
3  ----------------------------------
4
5  Caveat lector
6  -------------
7
8  As of moment of this writing Win64 support is classified "initial"
9  for the following reasons.
10
11  - No assembler modules are engaged upon initial 0.9.8 release.
12  - API might change within 0.9.8 life-span, *but* in a manner which
13    doesn't break backward binary compatibility. Or in other words,
14    application programs compiled with initial 0.9.8 headers will
15    be expected to work with future minor release .DLL without need
16    to re-compile, even if future minor release features modified API.
17  - Above mentioned API modifications have everything to do with
18    elimination of a number of limitations, which are normally
19    considered inherent to 32-bit platforms. Which in turn is why they
20    are treated as limitations on 64-bit platform such as Win64:-)
21    The current list comprises [but not necessarily limited to]:
22
23    - null-terminated strings may not be longer than 2G-1 bytes,
24      longer strings are treated as zero-length;
25    - dynamically and *internally* allocated chunks can't be larger
26      than 2G-1 bytes;
27    - inability to encrypt/decrypt chunks of data larger than 4GB
28      [it's possibly to *hash* chunks of arbitrary size through];
29
30    Neither of these is actually big deal and hardly encountered
31    in real-life applications.
32
33  ### Default install and config paths
34
35  ./Configure defaults to '/usr/local/ssl' as installation top.  This is
36  suitable for Unix, but not for Windows, where this usually is a world
37  writable directory and therefore accessible for change by untrusted users.
38  It is therefore recommended to set your own --prefix or --openssldir to
39  some location that is not world writeable (see the example above)
40
41  Compiling procedure
42  -------------------
43
44  You will need Perl. You can run under Cygwin or you can download
45  ActiveState Perl from http://www.activestate.com/ActivePerl.
46
47  You will need Microsoft Platform SDK, available for download at
48  http://www.microsoft.com/msdownload/platformsdk/sdkupdate/. As per
49  April 2005 Platform SDK is equipped with Win64 compilers, as well
50  as assemblers, but it might change in the future.
51
52  To build for Win64/x64:
53
54  > perl Configure VC-WIN64A --prefix=c:\some\openssl\dir
55  > ms\do_win64a
56  > nmake -f ms\ntdll.mak
57  > cd out32dll
58  > ..\ms\test
59
60  To build for Win64/IA64:
61
62  > perl Configure VC-WIN64I --prefix=c:\some\openssl\dir
63  > ms\do_win64i
64  > nmake -f ms\ntdll.mak
65  > cd out32dll
66  > ..\ms\test
67
68  Naturally test-suite itself has to be executed on the target platform.
69
70  Installation
71  ------------
72
73  TBD, for now see INSTALL.W32.
74