Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Newer
Older
100644 249 lines (160 sloc) 6.923 kB
fac1042 @bschmalhofer Added a couple of Id-tags for SVN.
bschmalhofer authored
1 # $Id$
2
5ffaa36 @coke [docs] update filename so the perldoc hint actually works.
coke authored
3 This file is best viewed with "perldoc README_win32".
d7c2759 [perl #29441] [PATCH] MSWin32 Docs
Leopold Toetsch authored
4
5 =head1 NAME
6
7 README.win32 - Parrot under Windows
8
9 =head1 SYNOPSIS
10
11 These are instructions for building the "native" port of Parrot under
12 Windows 2000/XP on the Intel x86 architecture.
13
14 =head1 DESCRIPTION
15
16 Win32 "native" ports require no additional software to run but the
17 operating system. There should be other READMEs for (emulation)
18 systems that run on Win32, eg Cygwin.
19
20 Native compilers include:
21
6e2d16a @fperrad update some version:
fperrad authored
22 Borland C++ (bcc) version xxx or later
23 Microsoft Visual C++ (cl) version 13.10.3077 or later
24 MinGW32 with GCC (gcc) version 3.4.2 or later
d7c2759 [perl #29441] [PATCH] MSWin32 Docs
Leopold Toetsch authored
25 Intel C++ (icl) version 8.0.48 works
26
27 =head2 Setting Up Parrot
28
29 =over
30
31 =item Make
32
6a2ea71 @chromatic Note that nmake 1.5 will not build Parrot (patch from Nigel Sandever,
chromatic authored
33 You need "nmake" to build Parrot under Windows with Microsoft compilers. It
34 should be available via Microsoft Visual Studio .NET 2003 or the Microsoft .NET
35 Framework SDK 1.1. Download the latter from the Microsoft .NET Framework
36 Homepage L<http://msdn.microsoft.com/netframework/>.
37
38 Note: Parrot will not build using nmake v1.5 from the MS web site. Download
39 one of the above toolkits to obtain a later version, either v7 or v8.
2deaca8 add urls for nnake
Leopold Toetsch authored
40
f8b2d07 @fperrad update version for mingw
fperrad authored
41 MinGW works with its GNU "make" (v 3.81) port and its name is
7db34d8 @fperrad update with ICU 3.6
fperrad authored
42 'mingw32-make.exe'. If you also have the Minimal SYStem (MSYS) installed,
a8303de @jnthn Describe a possible MinGW/MSVC++ build issue in the Win32 build readm…
jnthn authored
43 you will need to remove the Msys/bin folder from your PATH environment
44 variable before calling "perl Configure.pl" and mingw32-make. Perl detects
7db34d8 @fperrad update with ICU 3.6
fperrad authored
45 and calls /bin/sh.exe, if found, whenever shelling a new process. sh.exe
46 causes problems for mingw32-make.exe because of its inability to handle
a8303de @jnthn Describe a possible MinGW/MSVC++ build issue in the Win32 build readm…
jnthn authored
47 Windows pathnames with backslashes. You must run "perl Configure.pl" and
48 mingw32-make from a dosbox; running those commands from an MSYS shell window
49 will experience the same backslash path problems.
df4b1f7 [perl #33924] [PATCH] Build on Win32 with MinGW
Leopold Toetsch authored
50
d7c2759 [perl #29441] [PATCH] MSWin32 Docs
Leopold Toetsch authored
51 =item Command Shell
52
53 The surest way to build it is on Windows NT/2000/XP, using the cmd shell.
54
55 =item ICU
56
26edb66 @chromatic Documentation patch #34986 from Ron Blaschke.
chromatic authored
57 Parrot no longer comes with its own ICU, thus you need to install it on your
58 system if you want to use it. Note that ICU is now optional, you can
59 build Parrot without it, by not installing it or asking Parrot to
6e8ac99 @particle [CAGE]: entropy reduction on root files (bitrot--)
particle authored
60 ignore it (C<--without-icu>).
26edb66 @chromatic Documentation patch #34986 from Ron Blaschke.
chromatic authored
61
62 If you want to use ICU, download it from
16f174e @fperrad [win32]
fperrad authored
63 L<http://www.icu-project.org/download/>.
26edb66 @chromatic Documentation patch #34986 from Ron Blaschke.
chromatic authored
64
65 If you want to use precompiled binaries, do the following.
66 Download the package matching your compiler, unpack it (say, into
67 C:\usr\lib), add the F<bin> directory to C<PATH>, and tell
d7c2759 [perl #29441] [PATCH] MSWin32 Docs
Leopold Toetsch authored
68 Configure.pl to use it.
69
70 mkdir C:\usr\lib
f24cf2a @fperrad [ICU] update with version 4.0
fperrad authored
71 unzip icu4c-4_0-Win32-msvc8.zip -d C:\usr\lib
26edb66 @chromatic Documentation patch #34986 from Ron Blaschke.
chromatic authored
72 mkdir C:\usr\lib\data
d7c2759 [perl #29441] [PATCH] MSWin32 Docs
Leopold Toetsch authored
73 set PATH=%PATH%;C:\usr\lib\icu\bin
74 cd <parrot directory>
67c929f @ambs While discussion continues on p2, pod files should be at most
ambs authored
75 perl Configure.pl
76 --icushared="C:\usr\lib\icu\lib\icudt.lib C:\usr\lib\icu\lib\icuuc.lib"
77 --icuheaders="C:\usr\lib\icu\include"
26edb66 @chromatic Documentation patch #34986 from Ron Blaschke.
chromatic authored
78
79 Note the step of creating the F<C:\usr\lib\data> directory, as Parrot
80 really wants it and the binary packages don't contain it. It doesn't
81 need to contain anything though, as the data is pulled in from
82 F<lib/icudt.lib>, which contains the standard data in binary form.
df4b1f7 [perl #33924] [PATCH] Build on Win32 with MinGW
Leopold Toetsch authored
83
2ce7523 @jhoblitt change the spelling of librairies to libraries in README.win32, patch…
jhoblitt authored
84 =item Optional libraries
8733f48 [perl #36065] [PATCH] README.win32
Leopold Toetsch authored
85
2ce7523 @jhoblitt change the spelling of librairies to libraries in README.win32, patch…
jhoblitt authored
86 The availability of these libraries is checked by Configure.pl.
8733f48 [perl #36065] [PATCH] README.win32
Leopold Toetsch authored
87
c36925f @fperrad [digest]
fperrad authored
88 B<libcrypto> - a part of libssl
89 L<http://www.openssl.org/>
90
3bfae37 @fperrad [gettext]
fperrad authored
91 B<gettext> - library and tools for native language support
92 L<http://gnuwin32.sourceforge.net/>
93
6e8ac99 @particle [CAGE]: entropy reduction on root files (bitrot--)
particle authored
94 B<gdbm> - GNU database manager
8733f48 [perl #36065] [PATCH] README.win32
Leopold Toetsch authored
95 L<http://gnuwin32.sourceforge.net/>
96
6e8ac99 @particle [CAGE]: entropy reduction on root files (bitrot--)
particle authored
97 B<GMP> - GNU multiple precision arithmetic library
8733f48 [perl #36065] [PATCH] README.win32
Leopold Toetsch authored
98 L<http://developer.berlios.de/projects/win32gmp/>
99
6e8ac99 @particle [CAGE]: entropy reduction on root files (bitrot--)
particle authored
100 B<pcre> - Perl-Compatible Regular Expression library
9cbca78 @particle This small patch enables t/library/pcre.t on Win32.
particle authored
101 L<http://gnuwin32.sourceforge.net/>
102
11c2d35 @fperrad readline with MinGW32.
fperrad authored
103 B<readline> - edit command lines
104 L<http://gnuwin32.sourceforge.net/>
105
8733f48 [perl #36065] [PATCH] README.win32
Leopold Toetsch authored
106 =item Optional utilities
107
e057167 @fperrad [docs]
fperrad authored
108 The availability of these utilities is checked by Configure.pl
109 or by some test.
8733f48 [perl #36065] [PATCH] README.win32
Leopold Toetsch authored
110
6e8ac99 @particle [CAGE]: entropy reduction on root files (bitrot--)
particle authored
111 B<antlr> - ANother Tool for Language Recognition
8733f48 [perl #36065] [PATCH] README.win32
Leopold Toetsch authored
112 L<http://www.antlr.org/>
113
00c2e22 @fperrad [win32]
fperrad authored
114 B<ctags> - Exuberant Ctags
115 L<http://ctags.sourceforge.net/>
e057167 @fperrad [docs]
fperrad authored
116
a823065 [perl #34625] [PATCH] make setup on MSWin32
Leopold Toetsch authored
117 =item Inno Setup
118
119 Inno Setup is a I<free> installer for Windows programs.
120
1c3199a @fperrad [win32]
fperrad authored
121 The latest release of Inno Setup at the time of writing is 5.2.3.
a823065 [perl #34625] [PATCH] make setup on MSWin32
Leopold Toetsch authored
122
123 The HomePage is on L<http://www.jrsoftware.org/>.
124
125 Add the directory to PATH.
126
127 set PATH=%PATH%;C:\Program Files\Inno Setup 5
128
d7c2759 [perl #29441] [PATCH] MSWin32 Docs
Leopold Toetsch authored
129 =item Borland C++
130
131 XXX
132
133 =item Microsoft Visual C++
134
135 Since mid April 2004, Visual C++ comes in two flavors. Microsoft
136 Visual Studio .NET 2003 (L<http://msdn.microsoft.com/visualc/>), which
137 includes the full blown IDE, and Microsoft Visual C++ Toolkit 2003
138 (L<http://msdn.microsoft.com/visualc/vctoolkit2003/>), which is a free
139 (but unsupported) package, containing only the basic compiler and
140 linker stuff.
141
b252594 @coke Add some notes about compiling with the MS toolkit.
coke authored
142 If you use the Toolkit, be sure to follow the directions for setting up
143 your build environment that come with the perl distributions. (README.win32
6e8ac99 @particle [CAGE]: entropy reduction on root files (bitrot--)
particle authored
144 in the latest perl distribution.) You may have to substitute "Microsoft
145 Platform SDK" wherever "Microsoft SDK" is listed, depending on the your
b252594 @coke Add some notes about compiling with the MS toolkit.
coke authored
146 install. You can ignore the entries regarding "win32/config.vc", but be sure
147 to create the "link.bat" batch file. Copy the missing files mentioned,
148 run the Toolkit Command Prompt, set the appropriate env vars, and you
149 should be fine. (For env vars, you can update them under My Computer->
150 properties so they are available whenever you open a shell.)
151
152 Note: It is possible to use ActiveState Perl with the Toolkit: you don't
153 have to compile your own perl.
d7c2759 [perl #29441] [PATCH] MSWin32 Docs
Leopold Toetsch authored
154
a89f2f2 @coke Update information regarding strawberry perl build.
coke authored
155 =item Strawberry Perl
156
157 With the Strawberry perl distro from
158 L<http://strawberryperl.com/>, gcc is included. To build parrot,
159 use the strawberry perl binary to run Configure.pl, and then
160 follow the directions.
161
d7c2759 [perl #29441] [PATCH] MSWin32 Docs
Leopold Toetsch authored
162 =item MinGW32 with GCC
163
f8b2d07 @fperrad update version for mingw
fperrad authored
164 The latest release of MinGW package at the time of writing is 5.1.3,
1c3199a @fperrad [win32]
fperrad authored
165 which contains gcc-3.4.5 as current release.
7595ae8 @fperrad - more details on MinGW gcc version
fperrad authored
166 It can be downloaded here:
f8b2d07 @fperrad update version for mingw
fperrad authored
167 L<http://downloads.sourceforge.net/mingw/MinGW-5.1.3.exe>
df4b1f7 [perl #33924] [PATCH] Build on Win32 with MinGW
Leopold Toetsch authored
168
169 The HomePage is on L<http://www.mingw.org/>.
170
ba3fbfb @fperrad [win32]
fperrad authored
171 With the ActiveState Perl distribution, tell Configure.pl to use gcc :
df4b1f7 [perl #33924] [PATCH] Build on Win32 with MinGW
Leopold Toetsch authored
172
67c929f @ambs While discussion continues on p2, pod files should be at most
ambs authored
173 perl Configure.pl
174 --cc=gcc
175 --icushared="C:\usr\lib\icu\lib\icudt.lib C:\usr\lib\icu\lib\icuuc.lib"
176 --icuheaders="C:\usr\lib\icu\include"
4c8240c @chromatic Applied filepath fixes in patch #34986 from Francois Perrad.
chromatic authored
177 or
178 perl Configure.pl --cc=gcc --without-icu
d7c2759 [perl #29441] [PATCH] MSWin32 Docs
Leopold Toetsch authored
179
180 =item Intel C++
181
182 XXX
183
184 =back
185
186 =head2 Building
187
df4b1f7 [perl #33924] [PATCH] Build on Win32 with MinGW
Leopold Toetsch authored
188 $MAKE
d7c2759 [perl #29441] [PATCH] MSWin32 Docs
Leopold Toetsch authored
189
190 =head2 Testing
191
df4b1f7 [perl #33924] [PATCH] Build on Win32 with MinGW
Leopold Toetsch authored
192 $MAKE test
d7c2759 [perl #29441] [PATCH] MSWin32 Docs
Leopold Toetsch authored
193
194 =head2 Installation
195
df4b1f7 [perl #33924] [PATCH] Build on Win32 with MinGW
Leopold Toetsch authored
196 $MAKE install
d7c2759 [perl #29441] [PATCH] MSWin32 Docs
Leopold Toetsch authored
197
a823065 [perl #34625] [PATCH] make setup on MSWin32
Leopold Toetsch authored
198 =head2 Installer
199
200 $MAKE win32-inno-installer
6e8ac99 @particle [CAGE]: entropy reduction on root files (bitrot--)
particle authored
201
202 This command creates a setup-parrot-x.y.z.exe that contains all parrot install
a823065 [perl #34625] [PATCH] make setup on MSWin32
Leopold Toetsch authored
203 directories.
204
d7c2759 [perl #29441] [PATCH] MSWin32 Docs
Leopold Toetsch authored
205 =head2 Usage Hints
206
207 XXX
208
209 =head1 BUGS AND CAVEATS
210
26edb66 @chromatic Documentation patch #34986 from Ron Blaschke.
chromatic authored
211 =over
212
213 =item Features
214
215 Threads, Events, and Signals are missing.
216
217 =back
d7c2759 [perl #29441] [PATCH] MSWin32 Docs
Leopold Toetsch authored
218
219 =head1 ACKNOWLEDGEMENTS
220
221 XXX
222
223 =head1 AUTHORS
224
225 =over
226
26edb66 @chromatic Documentation patch #34986 from Ron Blaschke.
chromatic authored
227 =item Ron Blaschke E<lt>ron@rblasch.orgE<gt>
d7c2759 [perl #29441] [PATCH] MSWin32 Docs
Leopold Toetsch authored
228
8733f48 [perl #36065] [PATCH] README.win32
Leopold Toetsch authored
229 =item François Perrad E<lt>francois.perrad@gadz.orgE<gt>
230
d7c2759 [perl #29441] [PATCH] MSWin32 Docs
Leopold Toetsch authored
231 =back
232
26edb66 @chromatic Documentation patch #34986 from Ron Blaschke.
chromatic authored
233 This document is maintained by The Parrot Developers
ac517aa @chipdude From: Chris Dolan <chris@chrisdolan.net>
chipdude authored
234 (E<lt>parrot-porters@perl.orgE<gt>).
d7c2759 [perl #29441] [PATCH] MSWin32 Docs
Leopold Toetsch authored
235
236 =head1 SEE ALSO
237
238 L<parrot>
239
240 =head1 HISTORY
241
26edb66 @chromatic Documentation patch #34986 from Ron Blaschke.
chromatic authored
242 This document borrows heavily from Perl's README.win32.
d7c2759 [perl #29441] [PATCH] MSWin32 Docs
Leopold Toetsch authored
243
8733f48 [perl #36065] [PATCH] README.win32
Leopold Toetsch authored
244 GCC/mingw32 support was added in 0.1.2 (François Perrad).
245
00c2e22 @fperrad [win32]
fperrad authored
246 Last updated: 20 Jan 2009
d7c2759 [perl #29441] [PATCH] MSWin32 Docs
Leopold Toetsch authored
247
248 =cut
Something went wrong with that request. Please try again.