X-Git-Url: https://perl5.git.perl.org/perl5.git/blobdiff_plain/1bb125e2afe6197deaf55852a3f8a9c52736bfdc..d7425188c3bef8a77425c103db57cf8cde99f5a0:/INSTALL diff --git a/INSTALL b/INSTALL index eb7cc07..06654ac 100644 --- a/INSTALL +++ b/INSTALL @@ -36,13 +36,18 @@ any prefix location by adding "-Dprefix='/some/dir'" to Configure's args. To explicitly name the perl binary, use the command "make install PERLNAME=myperl". +Building perl from source requires an ANSI compliant C-Compiler. +A minimum of C89 is required. Some features available in C99 will +be probed for and used when found. The perl build process does not +rely on anything more than C89. + These options, and many more, are explained in further detail below. If you have problems, corrections, or questions, please see L<"Reporting Problems"> below. For information on what's new in this release, see the -pod/perl5130delta.pod file. For more information about how to find more +pod/perldelta.pod file. For more information about how to find more specific detail about changes, see the Changes file. =head1 DESCRIPTION @@ -75,10 +80,10 @@ directory. =head2 Changes and Incompatibilities -Please see pod/perl5130delta.pod for a description of the changes and +Please see pod/perldelta.pod for a description of the changes and potential incompatibilities introduced with this release. A few of the most important issues are listed below, but you should refer -to pod/perl5130delta.pod for more detailed information. +to pod/perldelta.pod for more detailed information. B This version is not binary compatible with prior releases of Perl. If you have built extensions (i.e. modules that include C code) @@ -93,7 +98,7 @@ The standard extensions supplied with Perl will be handled automatically. On a related issue, old modules may possibly be affected by the changes in the Perl language in the current release. Please see -pod/perl5130delta.pod for a description of what's changed. See your +pod/perldelta.pod for a description of what's changed. See your installed copy of the perllocal.pod file for a (possibly incomplete) list of locally installed modules. Also see CPAN::autobundle for one way to make a "bundle" of your currently installed modules. @@ -495,9 +500,10 @@ to avoid these leaks. The default is now to perform direct manipulation whenever perl is running as a stand alone interpreter, and to call the safe but potentially leaky C function when the perl interpreter is embedded in another application. You can force perl to always use C -by compiling with -DPERL_USE_SAFE_PUTENV. You can force an embedded perl to -use direct manipulation by setting C after the -C call. +by compiling with C<-Accflags="-DPERL_USE_SAFE_PUTENV">, see section +L. +You can force an embedded perl to use direct manipulation by setting +C after the C call. =head2 Installation Directories @@ -524,9 +530,9 @@ The directories set up by Configure fall into three broad categories. =item Directories for the perl distribution -By default, Configure will use the following directories for 5.13.0. +By default, Configure will use the following directories for 5.13.6. $version is the full perl version number, including subversion, e.g. -5.13.0 or 5.9.5, and $archname is a string like sun4-sunos, +5.13.6 or 5.9.5, and $archname is a string like sun4-sunos, determined by Configure. The full definitions of all Configure variables are in the file Porting/Glossary. @@ -830,6 +836,13 @@ modules, you can specify to not include the paths found: sh Configure -Dinc_version_list=none ... +If you do want to use modules from some previous perl versions, the variable +must contain a space separated list of directories under the site_perl +directory, and has to include architecture-dependent directories separately, +eg. + + sh Configure -Dinc_version_list="5.12.0/x86_64-linux 5.12.0" ... + When using the newer perl, you can add these paths again in the $PERL5LIB environment variable or with perl's -I runtime option. @@ -2360,9 +2373,9 @@ won't interfere with another version. (The defaults guarantee this for libraries after 5.6.0, but not for executables. TODO?) One convenient way to do this is by using a separate prefix for each version, such as - sh Configure -Dprefix=/opt/perl5.13.0 + sh Configure -Dprefix=/opt/perl5.13.6 -and adding /opt/perl5.13.0/bin to the shell PATH variable. Such users +and adding /opt/perl5.13.6/bin to the shell PATH variable. Such users may also wish to add a symbolic link /usr/local/bin/perl so that scripts can still start with #!/usr/local/bin/perl. @@ -2375,13 +2388,13 @@ seriously consider using a separate directory, since development subversions may not have all the compatibility wrinkles ironed out yet. -=head2 Upgrading from 5.11.0 or earlier +=head2 Upgrading from 5.13.4 or earlier -B Perl modules having binary parts (meaning that a C compiler is used) will have to be recompiled to be -used with 5.13.0. If you find you do need to rebuild an extension with -5.13.0, you may safely do so without disturbing the older +used with 5.13.6. If you find you do need to rebuild an extension with +5.13.6, you may safely do so without disturbing the older installations. (See L<"Coexistence with earlier versions of perl 5"> above.)