Skip to content

HTTPS clone URL

Subversion checkout URL

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