~ubuntu-branches/ubuntu/maverick/openssl/maverick

« back to all changes in this revision

Viewing changes to INSTALL.W32

  • Committer: Bazaar Package Importer
  • Author(s): Kurt Roeckx
  • Date: 2005-12-13 21:37:42 UTC
  • mto: (11.1.1 lenny)
  • mto: This revision was merged to the branch mainline in revision 4.
  • Revision ID: james.westby@ubuntu.com-20051213213742-d0ydaylf80l16bj1
Tags: upstream-0.9.8a
ImportĀ upstreamĀ versionĀ 0.9.8a

Show diffs side-by-side

added added

removed removed

Lines of Context:
3
3
 ----------------------------------
4
4
 
5
5
 [Instructions for building for Windows CE can be found in INSTALL.WCE]
 
6
 [Instructions for building for Win64 can be found in INSTALL.W64]
6
7
 
7
8
 Heres a few comments about building OpenSSL in Windows environments.  Most
8
9
 of this is tested on Win32 but it may also work in Win 3.1 with some
46
47
 http://www.kernel.org/pub/software/devel/nasm/binaries/win32/
47
48
 The NASM binary nasmw.exe needs to be installed anywhere on your PATH.
48
49
 
49
 
 Firstly you should run Configure (to build a FIPS-certified variant of
50
 
 OpenSSL, add the option "fips"):
 
50
 Firstly you should run Configure:
51
51
 
52
52
 > perl Configure VC-WIN32
53
53
 
54
54
 Next you need to build the Makefiles and optionally the assembly language
55
 
 files (to build a FIPS-certified variant of OpenSSL, add the argument "fips"):
 
55
 files:
56
56
 
57
57
 - If you are using MASM then run:
58
58
 
101
101
 Borland C++ builder 5
102
102
 ---------------------
103
103
 
104
 
 * Configure for building with Borland Builder (to build a FIPS-certified
105
 
   variant of OpenSSL, add the option "fips"):
 
104
 * Configure for building with Borland Builder:
106
105
   > perl Configure BC-32
107
106
 
108
 
 * Create the appropriate makefile (to build a FIPS-certified variant of
109
 
   OpenSSL, add the argument "fips")
 
107
 * Create the appropriate makefile
110
108
   > ms\do_nasm
111
109
 
112
110
 * Build
197
195
   occur, try
198
196
   > ms\mingw32 no-asm
199
197
   instead.
200
 
   If you want to build a FIPS-certified variant of OpenSSL, add the argument
201
 
   "fips"
202
198
 
203
199
   libcrypto.a and libssl.a are the static libraries. To use the DLLs,
204
200
   link with libeay32.a and libssl32.a instead.
291
287
 (e.g. fopen()), and OpenSSL cannot change these; so in general you cannot
292
288
 rely on CRYPTO_malloc_init() solving your problem, and you should
293
289
 consistently use the multithreaded library.
 
290
 
 
291
 Linking your application
 
292
 ------------------------
 
293
 
 
294
 If you link with static OpenSSL libraries [those built with ms/nt.mak],
 
295
 then you're expected to additionally link your application with
 
296
 WSOCK32.LIB, ADVAPI32.LIB, GDI32.LIB and USER32.LIB. Those developing
 
297
 non-interactive service applications might feel concerned about linking
 
298
 with latter two, as they are justly associated with interactive desktop,
 
299
 which is not available to service processes. The toolkit is designed
 
300
 to detect in which context it's currently executed, GUI, console app
 
301
 or service, and act accordingly, namely whether or not to actually make
 
302
 GUI calls.
 
303
 
 
304
 If you link with OpenSSL .DLLs, then you're expected to include into
 
305
 your application code small "shim" snippet, which provides glue between
 
306
 OpenSSL BIO layer and your compiler run-time. Look up OPENSSL_Applink
 
307
 reference page for further details.