OLD | NEW |
| (Empty) |
1 | |
2 Windows port | |
3 ------------ | |
4 | |
5 This directory contains the files required to build this software on the | |
6 native Windows platform. | |
7 | |
8 As a rule of thumb, the root of this directory contains files needed | |
9 to build the library using the command-line tools, while various | |
10 subdirectories contain project files for various IDEs. | |
11 | |
12 | |
13 1. Building from the command-line | |
14 ================================= | |
15 | |
16 This is the easiest, preferred and currently supported method. | |
17 | |
18 In order to build from the command-line you need to make sure that | |
19 your compiler works from the command line. This is not always the | |
20 case, often the required environment variables are missing. If you are | |
21 not sure, test if this works first. If it doesn't, you will first have | |
22 to configure your compiler suite to run from the command-line - please | |
23 refer to your compiler's documentation regarding that. | |
24 | |
25 The first thing you want to do is configure the source. You can have | |
26 the configuration script do this automatically for you. The | |
27 configuration script is written in JScript, a Microsoft's | |
28 implementation of the ECMA scripting language. Almost every Windows | |
29 machine can execute this through the Windows Scripting Host. If your | |
30 system lacks the ability to execute JScript for some reason, you must | |
31 perform the configuration manually. | |
32 | |
33 The second step is compiling the source and, optionally, installing it | |
34 to the location of your choosing. | |
35 | |
36 | |
37 1.1 Configuring the source automatically | |
38 ---------------------------------------- | |
39 | |
40 The configuration script accepts numerous options. Some of these | |
41 affect features which will be available in the compiled software, | |
42 others affect the way the software is built and installed. To see a | |
43 full list of options supported by the configuration script, run | |
44 | |
45 cscript configure.js help | |
46 | |
47 from the win32 subdirectory. The configuration script will present you | |
48 the options it accepts and give a biref explanation of these. In every | |
49 case you will have two sets of options. The first set is specific to | |
50 the software you are building and the second one is specific to the | |
51 Windows port. | |
52 | |
53 Once you have decided which options suit you, run the script with that | |
54 options. Here is an example: | |
55 | |
56 cscript configure.js prefix=c:\opt include=c:\opt\include | |
57 lib=c:\opt\lib debug=yes | |
58 | |
59 The previous example will configure the process to install the library | |
60 in c:\opt, use c:\opt\include and c:\opt\lib as additional search | |
61 paths for the compiler and the linker and build executables with debug | |
62 symbols. | |
63 | |
64 Note: Please do not use path names which contain spaces. This will | |
65 fail. Allowing this would require me to put almost everything in the | |
66 Makefile in quotas and that looks quite ugly with my | |
67 syntax-highlighting engine. If you absolutely must use spaces in paths | |
68 send me an email and tell me why. If there are enough of you out there | |
69 who need this, or if a single one has a very good reason, I will | |
70 modify the Makefile to allow spaces in paths. | |
71 | |
72 | |
73 1.2 (Not) Configuring the source manually | |
74 ----------------------------------------- | |
75 | |
76 The manual configuration is pretty straightforward, but I would | |
77 suggest rather to get a JScript engine and let the configure script do | |
78 it for you. This process involves editing the apropriate Makefile to | |
79 suit your needs, as well as manually generating certain *.h files from | |
80 their *.h.in sources. | |
81 | |
82 If you really have no idea what I am talking about and ask yourself | |
83 what in Gods name do I mean with '*.h files and their *.h.in sources', | |
84 then you really should do an automatic configuration. Which files must | |
85 be generated and what needs to be done with their sources in order to | |
86 generate them is something people who have built this software before | |
87 allready know. You will not find any explanations for that | |
88 here. Please configure the source manually only if you allready know | |
89 what you must do. Otherwise, you have the choice of either getting a | |
90 precompiled binary distribution, or performing the automatic | |
91 configuration. | |
92 | |
93 | |
94 1.3 Compiling | |
95 ------------- | |
96 | |
97 After the configuration stage has been completed, you want to build | |
98 the software. You will have to use the make tool which comes with | |
99 your compiler. If you, for example, configured the source to build | |
100 with Microsoft's MSVC compiler, you would use the NMAKE utility. If | |
101 ýou configured it to build with GNU C compiler, mingw edition, you | |
102 would use the GNU make. Assuming you use MSVC, type | |
103 | |
104 nmake | |
105 | |
106 in the win32 subdirectory.When the building completes, you will find | |
107 the executable files in win32\binaries directory. | |
108 | |
109 You can install the software into the directory you specified to the | |
110 configure script during the configure stage by typing | |
111 | |
112 nmake install | |
113 | |
114 That would be it, enjoy. | |
115 | |
116 | |
117 2. Building with the IDE | |
118 ======================== | |
119 | |
120 Each supported IDE has its project files placed in a subdirectory of | |
121 win32. If you use a particular IDE, you should be able to | |
122 instinctively recognise its project files. When you have found your | |
123 favourites, load them into the IDE and do whatever you would do with | |
124 any other project files. If you are a novice and puzzled about how to | |
125 use particular project files with a particular IDE, check for a readme | |
126 file in that IDEs subdirectory. I won't discuss any particular IDE | |
127 here, because I would like to keep this document as general as | |
128 possible, and there is also a chance that support exists for IDEs | |
129 which I have never seen. | |
130 | |
131 | |
132 November 2002, Igor Zlatkovic <igor@zlatkovic.com> | |
133 | |
OLD | NEW |