[PATCH 5.004_60] Fix to MM_VMS.PM
[p5sagit/p5-mst-13.2.git] / INSTALL
diff --git a/INSTALL b/INSTALL
index 488a1ce..782cd94 100644 (file)
--- a/INSTALL
+++ b/INSTALL
@@ -363,17 +363,12 @@ above.
 
 The  directories site_perl and site_perl/archname are empty, but are
 intended to be used for installing local or site-wide extensions.  Perl
-will automatically look in these directories.  Previously, most sites
-just put their local extensions in with the standard distribution.
+will automatically look in these directories. 
 
 In order to support using things like #!/usr/local/bin/perl5.004 after
 a later version is released, architecture-dependent libraries are
 stored in a version-specific directory, such as
-/usr/local/lib/perl5/archname/5.004/.  In Perl 5.000 and 5.001, these
-files were just stored in /usr/local/lib/perl5/archname/.  If you will
-not be using 5.001 binaries, you can delete the standard extensions from
-the /usr/local/lib/perl5/archname/ directory.  Locally-added extensions
-can be moved to the site_perl and site_perl/archname directories.
+/usr/local/lib/perl5/archname/5.004/.  
 
 Again, these are just the defaults, and can be changed as you run
 Configure.
@@ -445,36 +440,25 @@ some of the main things you can change.
 
 =head2 Binary Compatibility With Earlier Versions of Perl 5
 
-If you have dynamically loaded extensions that you built under
-perl 5.003 and that you wish to continue to use with perl 5.004, then you
-need to ensure that 5.004 remains binary compatible with 5.003.
-
-Starting with Perl 5.003, all functions in the Perl C source code have
-been protected by default by the prefix Perl_ (or perl_) so that you
-may link with third-party libraries without fear of namespace
-collisions.  This change broke compatibility with version 5.002, so
-installing 5.003 or 5.004 over 5.002 or earlier will force you to
-re-build and install all of your dynamically loadable extensions.
-(The standard extensions supplied with Perl are handled
+For Perl 5.004 it was possible to be binary compatible with 5.003.
+Starting from Perl 5.005 this is no more possible because there were
+many deep and far-reaching changes to the language internals.
+
+If you have dynamically loaded extensions that you built under perl
+5.003 or 5.004 and the so-called 'bincompat3' mode (the default mode)
+and that you wish to continue to use with perl 5.005, you may need to
+reinstall the extensions.
+
+Background: starting with Perl 5.003, all functions in the Perl C
+source code have been protected by default by the prefix Perl_ (or
+perl_) so that you may link with third-party libraries without fear of
+namespace collisions.  This change broke compatibility with version
+5.002, so installing 5.003 or 5.004 over 5.002 or earlier will force
+you to re-build and install all of your dynamically loadable
+extensions.  (The standard extensions supplied with Perl are handled
 automatically).  You can turn off this namespace protection by adding
 -DNO_EMBED to your ccflags variable in config.sh.
 
-Perl 5.003's namespace protection was incomplete, but this has
-been fixed in 5.004.  However, some sites may need to maintain
-complete binary compatibility with Perl 5.003.  If you are building
-Perl for such a site, then when Configure asks if you want binary
-compatibility, answer "y".
-
-On the other hand, if you are embedding perl into another application
-and want the maximum namespace protection, then you probably ought to
-answer "n" when Configure asks if you want binary compatibility, or
-disable it from the Configure command line with
-
-       sh Configure -Ud_bincompat3
-
-The default answer of "y" to maintain binary compatibility is probably
-appropriate for almost everyone.
-
 In a related issue, old extensions may possibly be affected by the
 changes in the Perl language in the current release.  Please see
 pod/perldelta.pod for a description of what's changed.
@@ -877,8 +861,8 @@ and then re-run
 
 =item No sh
 
-If you don't have sh, you'll have to copy the sample file config_H to
-config.h and edit the config.h to reflect your system's peculiarities.
+If you don't have sh, you'll have to copy the sample file Porting/config_H
+to config.h and edit the config.h to reflect your system's peculiarities.
 You'll probably also have to extensively modify the extension building
 mechanism.
 
@@ -941,7 +925,18 @@ to test your version of miniperl.
 If you have any locale-related environment variables set, try
 unsetting them.  I have some reports that some versions of IRIX hang
 while running B<./miniperl configpm> with locales other than the C
-locale.  See the discussion under L<make test> below about locales.
+locale.  See the discussion under L<"make test"> below about locales
+and the whole L<Locale problems> section in the file pod/perllocale.pod.
+The latter is especially useful if you see something like this
+
+       perl: warning: Setting locale failed.
+       perl: warning: Please check that your locale settings:
+               LC_ALL = "En_US",
+               LANG = (unset)
+           are supported and installed on your system.
+       perl: warning: Falling back to the standard locale ("C").
+
+at Perl startup.
 
 =item malloc duplicates