This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
made eq_array in t/test.pl handle undef values better
[perl5.git] / README.win32
index b9ab612..9d99244 100644 (file)
@@ -122,7 +122,8 @@ See L</"Make"> above.
 
 The nmake that comes with Visual C++ will suffice for building.
 You will need to run the VCVARS32.BAT file, usually found somewhere
-like C:\MSDEV4.2\BIN.  This will set your build environment.
+like C:\MSDEV4.2\BIN or C:\Program Files\Microsoft Visual Studio\VC98\Bin.
+This will set your build environment.
 
 You can also use dmake to build using Visual C++; provided, however,
 you set OSRELEASE to "microsft" (or whatever the directory name
@@ -197,8 +198,7 @@ Make sure you are in the "win32" subdirectory under the perl toplevel.
 This directory contains a "Makefile" that will work with
 versions of nmake that come with Visual C++ or the Platform SDK, and
 a dmake "makefile.mk" that will work for all supported compilers.  The
-defaults in the dmake makefile are setup to build using Microsoft Visual
-C++ 6.0 or newer.
+defaults in the dmake makefile are setup to build using MinGW/gcc.
 
 =item *
 
@@ -224,7 +224,7 @@ If you have either the source or a library that contains des_fcrypt(),
 enable the appropriate option in the makefile.  A ready-to-use version
 of fcrypt.c, based on the version originally written by Eric Young at
 ftp://ftp.funet.fi/pub/crypt/mirrors/dsi/libdes/, is bundled with the
-distribution. Set CRYPT_SRC to fcrypt.c to use this version.
+distribution and CRYPT_SRC is set to use it.
 Alternatively, if you have built a library that contains des_fcrypt(),
 you can set CRYPT_LIB to point to the library name.
 Perl will also build without des_fcrypt(), but the crypt() builtin will
@@ -289,19 +289,20 @@ Please report any other failures as described under L<BUGS AND CAVEATS>.
 Type "dmake install" (or "nmake install").  This will put the newly
 built perl and the libraries under whatever C<INST_TOP> points to in the
 Makefile.  It will also install the pod documentation under
-C<$INST_TOP\$VERSION\lib\pod> and HTML versions of the same under
-C<$INST_TOP\$VERSION\lib\pod\html>.  To use the Perl you just installed,
-you will need to add two components to your PATH environment variable,
-C<$INST_TOP\$VERSION\bin> and C<$INST_TOP\$VERSION\bin\$ARCHNAME>.
-For example:
+C<$INST_TOP\$INST_VER\lib\pod> and HTML versions of the same under
+C<$INST_TOP\$INST_VER\lib\pod\html>.
 
-    set PATH c:\perl\5.6.0\bin;c:\perl\5.6.0\bin\MSWin32-x86;%PATH%
+To use the Perl you just installed you will need to add a new entry to
+your PATH environment variable: C<$INST_TOP\bin>, e.g.
 
-If you opt to comment out INST_VER and INST_ARCH in the makefiles, the
-installation structure is much simpler.  In that case, it will be
-sufficient to add a single entry to the path, for instance:
+    set PATH=c:\perl\bin;%PATH%
 
-    set PATH c:\perl\bin;%PATH%
+If you opted to uncomment C<INST_VER> and C<INST_ARCH> in the makefile
+then the installation structure is a little more complicated and you will
+need to add two new PATH components instead: C<$INST_TOP\$INST_VER\bin> and
+C<$INST_TOP\$INST_VER\bin\$ARCHNAME>, e.g.
+
+    set PATH=c:\perl\5.6.0\bin;c:\perl\5.6.0\bin\MSWin32-x86;%PATH%
 
 =head2 Usage Hints for Perl on Win32
 
@@ -382,7 +383,7 @@ enclosing the whole argument within double quotes.  The backslash and
 the pair of double quotes surrounding the argument will be stripped by
 the C runtime.
 
-The file redirection characters "<", ">", and "|" can be quoted by
+The file redirection characters "E<lt>", "E<gt>", and "|" can be quoted by
 double quotes (although there are suggestions that this may not always
 be true).  Single quotes are not treated as quotes by the shell or
 the C runtime, they don't get stripped by the shell (just to make
@@ -562,11 +563,11 @@ cannot be built using the generic steps shown in the previous section.
 
 To ensure smooth transitioning of existing code that uses the
 ActiveState port, there is a bundle of Win32 extensions that contains
-all of the ActiveState extensions and most other Win32 extensions from
+all of the ActiveState extensions and several other Win32 extensions from
 CPAN in source form, along with many added bugfixes, and with MakeMaker
 support.  This bundle is available at:
 
-   http://www.cpan.org/authors/id/GSAR/libwin32-0.18.zip
+   http://www.cpan.org/modules/by-module/Win32/libwin32-0.191.zip
 
 See the README in that distribution for building and installation
 instructions.  Look for later versions that may be available at the
@@ -591,6 +592,8 @@ binaries transparently.  This means that you could use a 32-bit build
 of Perl on a 64-bit system.  Given this, why would one want to build
 a 64-bit build of Perl?  Here are some reasons why you would bother:
 
+=over
+
 =item *
 
 A 64-bit native application will run much more efficiently on
@@ -611,6 +614,8 @@ Embedding Perl inside a 64-bit application.
 
 =back
 
+=back
+
 =head2 Running Perl Scripts
 
 Perl scripts on UNIX use the "#!" (a.k.a "shebang") line to
@@ -679,7 +684,9 @@ Here's a diversion:  copy "runperl.bat" to "runperl", and type
 "runperl".  Explain the observed behavior, or lack thereof. :)
 Hint: .gnidnats llits er'uoy fi ,"lrepnur" eteled :tniH
 
-=item Miscellaneous Things
+=back
+
+=head2 Miscellaneous Things
 
 A full set of HTML documentation is installed, so you should be
 able to use it if you have a web browser installed on your
@@ -704,8 +711,6 @@ If you find bugs in perl, you can run C<perlbug> to create a
 bug report (you may have to send it manually if C<perlbug> cannot
 find a mailer on your system).
 
-=back
-
 =head1 BUGS AND CAVEATS
 
 Norton AntiVirus interferes with the build process, particularly if 
@@ -726,7 +731,7 @@ Some of the built-in functions do not act exactly as documented in
 L<perlfunc>, and a few are not implemented at all.  To avoid
 surprises, particularly if you have had prior exposure to Perl
 in other operating environments or if you intend to write code
-that will be portable to other environments.  See L<perlport>
+that will be portable to other environments, see L<perlport>
 for a reasonably definitive list of these differences.
 
 Not all extensions available from CPAN may build or work properly
@@ -734,6 +739,12 @@ in the Win32 environment.  See L</"Building Extensions">.
 
 Most C<socket()> related calls are supported, but they may not
 behave as on Unix platforms.  See L<perlport> for the full list.
+Perl requires Winsock2 to be installed on the system. If you're
+running Win95, you can download Winsock upgrade from here:
+
+http://www.microsoft.com/windows95/downloads/contents/WUAdminTools/S_WUNetworkingTools/W95Sockets2/Default.asp
+
+Later OS versions already include Winsock2 support.
 
 Signal handling may not behave as on Unix platforms (where it
 doesn't exactly "behave", either :).  For instance, calling C<die()>
@@ -744,8 +755,8 @@ variable in the handler.  Using signals under this port should
 currently be considered unsupported.
 
 Please send detailed descriptions of any problems and solutions that 
-you may find to <F<perlbug@perl.com>>, along with the output produced
-by C<perl -V>.
+you may find to E<lt>F<perlbug@perl.org>E<gt>, along with the output
+produced by C<perl -V>.
 
 =head1 ACKNOWLEDGEMENTS
 
@@ -789,6 +800,6 @@ Win9x support was added in 5.6 (Benjamin Stuhl).
 
 Support for 64-bit Windows added in 5.8 (ActiveState Corp).
 
-Last updated: 20 April 2002
+Last updated: 30 July 2004
 
 =cut