]>
Commit | Line | Data |
---|---|---|
0bf23d9b RL |
1 | |
2 | INSTALLATION FOR THE WINDOWS CE PLATFORM | |
3 | ---------------------------------------- | |
4 | ||
5 | Building OpenSSL for Windows CE requires the following external tools: | |
6 | ||
176a6148 AP |
7 | * Microsoft eMbedded Visual C++ 3.0 or later |
8 | * Appropriate SDK might be required | |
9 | * Perl for Win32 [commonly recommended ActiveState Perl is available | |
10 | from http://www.activestate.com/Products/ActivePerl/] | |
d36ab9ce RL |
11 | You also need the perl module Text::Template. |
12 | Please read README.PERL for more information. | |
176a6148 AP |
13 | |
14 | * wcecompat compatibility library available at | |
15 | http://www.essemer.com.au/windowsce/ | |
16 | * Optionally ceutils for running automated tests (same location) | |
17 | ||
18 | _or_ | |
19 | ||
20 | * PocketConsole driver and PortSDK available at | |
21 | http://www.symbolictools.de/public/pocketconsole/ | |
22 | * CMD command interpreter (same location) | |
23 | ||
24 | As Windows CE support in OpenSSL relies on 3rd party compatibility | |
25 | library, it's appropriate to check corresponding URL for updates. For | |
26 | example if you choose wcecompat, note that as for the moment of this | |
27 | writing version 1.2 is available and actually required for WCE 4.2 | |
28 | and newer platforms. All wcecompat issues should be directed to | |
29 | www.essemer.com.au. | |
30 | ||
31 | Why compatibility library at all? The C Runtime Library implementation | |
32 | for Windows CE that is included with Microsoft eMbedded Visual C++ is | |
33 | incomplete and in some places incorrect. Compatibility library plugs | |
34 | the holes and tries to bring the Windows CE CRT to [more] usable level. | |
35 | Most gaping hole in CRT is support for stdin/stdout/stderr IO, which | |
36 | proposed compatibility libraries solve in two different ways: wcecompat | |
37 | redirects IO to active sync link, while PortSDK - to NT-like console | |
38 | driver on the handheld itself. | |
0bf23d9b RL |
39 | |
40 | Building | |
41 | -------- | |
42 | ||
0bf23d9b RL |
43 | Setup the eMbedded Visual C++ environment. There are batch files for doing |
44 | this installed with eVC++. For an ARM processor, for example, execute: | |
45 | ||
46 | > "C:\Program Files\Microsoft eMbedded Tools\EVC\WCE300\BIN\WCEARM.BAT" | |
47 | ||
176a6148 | 48 | Next pick compatibility library according to your preferences. |
0bf23d9b | 49 | |
176a6148 AP |
50 | 1. To choose wcecompat set up WCECOMPAT environment variable pointing |
51 | at the location of wcecompat tree "root": | |
52 | ||
53 | > set WCECOMPAT=C:\wcecompat | |
54 | > set PORTSDK_LIBPATH= | |
55 | ||
56 | 2. To choose PortSDK set up PORTSDK_LIBPATH to point at hardware- | |
57 | specific location where your portlib.lib is installed: | |
58 | ||
59 | > set PORTSDK_LIBPATH=C:\PortSDK\lib\ARM | |
60 | > set WCECOMPAT= | |
61 | ||
62 | Note that you may not set both variables. | |
0bf23d9b RL |
63 | |
64 | Next you should run Configure: | |
65 | ||
66 | > perl Configure VC-CE | |
67 | ||
68 | Next you need to build the Makefiles: | |
69 | ||
70 | > ms\do_ms | |
71 | ||
0bf23d9b RL |
72 | Then from the VC++ environment at a prompt do: |
73 | ||
176a6148 | 74 | > nmake -f ms\cedll.mak |
0bf23d9b | 75 | |
176a6148 | 76 | [note that static builds are not supported under CE] |
0bf23d9b | 77 | |
176a6148 AP |
78 | If all is well it should compile and you will have some DLLs and executables |
79 | in out32dll*. | |
0bf23d9b | 80 | |
176a6148 | 81 | <<< everyting below needs revision in respect to wcecompat vs. PortSDK >>> |
0bf23d9b | 82 | |
176a6148 | 83 | If you want |
0bf23d9b RL |
84 | to try the tests then make sure the ceutils are in the path and do: |
85 | ||
86 | > cd out32 | |
87 | > ..\ms\testce | |
88 | ||
629b58b7 RL |
89 | This will copy each of the test programs to the Windows CE device and execute |
90 | them, displaying the output of the tests on this computer. The output should | |
91 | look similar to the output produced by running the tests for a regular Windows | |
92 | build. | |
93 |