Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Misleading message in 5.7.2 Configure script #4389

Closed
p5pRT opened this issue Sep 9, 2001 · 11 comments
Closed

Misleading message in 5.7.2 Configure script #4389

p5pRT opened this issue Sep 9, 2001 · 11 comments

Comments

@p5pRT
Copy link

p5pRT commented Sep 9, 2001

Migrated from rt.perl.org#7655 (status was 'resolved')

Searchable as RT7655$

@p5pRT
Copy link
Author

p5pRT commented Sep 9, 2001

From epa98@doc.ic.ac.uk

Downloaded devel.tar.gz for perl 5.7.2 and ran Configure. Among the
questions it asked me was 'do you want to install only the
version-specific parts of the perl distribution?'. The bug is that
the helpful suggestions Configure give conflict with each other​:

Do you want to install only the version-specific parts of the perl
distribution? Usually you do *not* want to do this.
Do you want to install only the version-specific parts of perl? [y] n

*** WHOA THERE!!! ***
  The recommended value for $versiononly on this machine was "define"!
  Keep the recommended value? [y]

In other words, I followed Configure's advice ('usually you do *not*
want to do this') but then it told me that was a bad idea! Now I
don't know whether to say yes or no to this question :-(.

Perhaps the bug is that Configure's default value was 'yes' when it
should normally be 'no'. Here's a complete transcript of the
interaction with Configure up to that point, in case it helps​:

epa98@​voxel30 ~/vol/tmp/perl-5.7.2 $ ./Configure

Beginning of configuration questions for perl5.

Checking echo to see how to suppress newlines...
...using -n.
The star should be here-->*

First let's make sure your kit is complete. Checking...
Looks good...

*** WHOA THERE!!! ***

  This is an UNSTABLE DEVELOPMENT release.
  The version of this perl5 distribution is 7, that is, odd,
  (as opposed to even) and that signifies a development release.
  If you want a maintenance release, you want an even-numbered version.

  Do ***NOT*** install this into production use.
  Data corruption and crashes are possible.

  It is most seriously suggested that you do not continue any further
  unless you want to help in developing and debugging Perl.

  If you *still* want to build perl, you can answer 'y' now,
  or pass -Dusedevel to Configure.

Do you really want to continue? [n] y
Okay, continuing.

This installation shell script will examine your system and ask you questions
to determine how the perl5 package should be installed. If you get
stuck on a question, you may use a ! shell escape to start a subshell or
execute a command. Many of the questions will have default answers in square
brackets; typing carriage return will give you the default.

On some of the questions which ask for file or directory names you are allowed
to use the ~name construct to specify the login directory belonging to "name",
even if you don't have a shell which knows about that. Questions where this is
allowed will be marked "(~name ok)".

[Type carriage return to continue]

The prompter used in this script allows you to use shell variables and
backticks in your answers. You may use $1, $2, etc... to refer to the words
in the default answer, as if the default line was a set of arguments given to a
script shell. This means you may also use $* to repeat the whole default line,
so you do not have to re-type everything to add something to the default.

Everytime there is a substitution, you will have to confirm. If there is an
error (e.g. an unmatched backtick), the default answer will remain unchanged
and you will be prompted again.

If you are in a hurry, you may run 'Configure -d'. This will bypass nearly all
the questions and use the computed defaults (or the previous answers if there
was already a config.sh file). Type 'Configure -h' for a list of options.
You may also start interactively and then answer '& -d' at any prompt to turn
on the non-interactive behaviour for the remainder of the execution.

[Type carriage return to continue]

Much effort has been expended to ensure that this shell script will run on any
Unix system. If despite that it blows up on yours, your best bet is to edit
Configure and run it again. If you can't run Configure for some reason,
you'll have to generate a config.sh file by hand. Whatever problems you
have, let me (perlbug@​perl.org) know how I blew it.

This installation script affects things in two ways​:

1) it may do direct variable substitutions on some of the files included
  in this kit.
2) it builds a config.h file for inclusion in C programs. You may edit
  any of these files as the need arises after running this script.

If you make a mistake on a question, there is no easy way to back up to it
currently. The easiest thing to do is to edit config.sh and rerun all the SH
files. Configure will offer to let you do this before it runs the SH files.

[Type carriage return to continue]

Locating common programs...
awk is in /bin/awk.
cat is in /bin/cat.
chmod is in /bin/chmod.
comm is in /usr/bin/comm.
cp is in /bin/cp.
echo is in /bin/echo.
expr is in /usr/bin/expr.
grep is in /bin/grep.
ls is in /bin/ls.
make is in /usr/bin/make.
mkdir is in /bin/mkdir.
rm is in /bin/rm.
sed is in /bin/sed.
sort is in /bin/sort.
touch is in /bin/touch.
tr is in /usr/bin/tr.
uniq is in /usr/bin/uniq.

Don't worry if any of the following aren't found...
I don't see Mcc out there, offhand.
ar is in /usr/bin/ar.
bison is in /usr/bin/bison.
byacc is in /usr/bin/byacc.
cpp is in /lib/cpp.
csh is in /bin/csh.
date is in /bin/date.
egrep is in /bin/egrep.
gzip is in /bin/gzip.
less is in /usr/bin/less.
ln is in /bin/ln.
more is in /bin/more.
nm is in /usr/bin/nm.
nroff is in /usr/bin/nroff.
I don't see pg out there, either.
test is in /usr/bin/test.
uname is in /bin/uname.
zip is in /usr/bin/zip.
Using the test built into your sh.

Checking compatibility between /bin/echo and builtin echo (if any)...
They are compatible. In fact, they may be identical.

Symbolic links are supported.

Checking how to test for symbolic links...
You can test for symbolic links with 'test -h'.

Good, your tr supports [​:lower​:] and [​:upper​:] to convert case.
Using [​:upper​:] and [​:lower​:] to convert case.

First time through, eh? I have some defaults handy for some systems
that need some extra help getting the Configure answers right​:

3b1 dynix isc_2 opus svr4
aix dynixptx linux os2 svr5
altos486 epix lynxos os390 ti1500
amigaos esix4 machten posix-bc titanos
apollo fps machten_2 powerux ultrix_4
atheos freebsd mint qnx umips
aux_3 genix mips rhapsody unicos
beos gnu mpc sco unicosmk
bsdos greenhills mpeix sco_2_3_0 unisysdynix
convexos hpux ncr_tower sco_2_3_1 utekv
cxux i386 netbsd sco_2_3_2 uts
cygwin irix_4 newsos4 sco_2_3_3 uwin
darwin irix_5 next_3 sco_2_3_4 vmesa
dcosx irix_6 next_3_0 solaris_2
dec_osf irix_6_0 next_4 stellar
dgux irix_6_1 nonstopux sunos_4_0
dos_djgpp isc openbsd sunos_4_1

You may give one or more space-separated answers, or "none" if appropriate.
A well-behaved OS will have no hints, so answering "none" or just "Policy"
is a good thing. DO NOT give a wrong version or a wrong OS.

Which of these apply, if any? [linux]

You appear to have ELF support. I'll try to use it for dynamic loading.
If dynamic loading doesn't work, read hints/linux.sh for further information.

You appear to have a working bash. Good.
Your csh is really tcsh. Good.

Configure uses the operating system name and version to set some defaults.
The default value is probably right if the name rings a bell. Otherwise,
since spelling matters for me, either accept the default or answer "none"
to leave it blank.

Operating system name? [linux]

Operating system version? [2.2.18]

Perl can be built to take advantage of threads on some systems.
To do so, Configure can be run with -Dusethreads.

Note that threading is a highly experimental feature, and
some known race conditions still remain. If you choose to try
it, be very sure to not actually deploy it for production
purposes. README.threads has more details, and is required
reading if you enable threads.

If this doesn't make any sense to you, just accept the default 'n'.
Build a threading Perl? [n]

Perl can be built so that multiple Perl interpreters can coexist
within the same Perl executable.

If this doesn't make any sense to you, just accept the default 'n'.
Build Perl for multiplicity? [n]

Hmm... Looks kind of like a Version 7 system, but we'll see...

Congratulations. You aren't running Eunice.

It's not Xenix...

Nor is it Venix...
Use which C compiler? [cc] gcc

Checking for GNU cc in disguise and/or its version number...
You are using GNU cc egcs-2.91.66 19990314/Linux (egcs-1.1.2 release).

Hmm... Doesn't look like a MIPS system.

Now, how can we feed standard input to your C preprocessor...
Maybe "gcc -E" will work...
Nope...maybe "gcc -E -" will work...
Yup, it does.

Some systems have incompatible or broken versions of libraries. Among
the directories listed in the question below, please remove any you
know not to be holding relevant libraries, and add any that are needed.
Say "none" for none.

Directories to use for library searches? [/usr/local/lib /lib /usr/lib]

On some systems, shared libraries may be available. Answer 'none' if
you want to suppress searching of shared libraries for the remainder
of this configuration.

What is the file extension used for shared libraries? [so]

Perl can be built to use the SOCKS proxy protocol library. To do so,
Configure must be run with -Dusesocks. If you use SOCKS you also need
to use the PerlIO abstraction layer, this will be implicitly selected.

If this doesn't make any sense to you, just accept the default 'n'.
Build Perl for SOCKS? [n]

Checking for optional libraries...
No -lsfio.
No -lsocket.
No -lbind.
No -linet.
Found -lnsl (shared).
No -lnm.
Found -lndbm (shared).
Found -lgdbm (shared).
No -ldbm.
Found -ldb (shared).
No -lmalloc.
Found -ldl (shared).
No -ldld.
No -lld.
No -lsun.
Found -lm (shared).
Found -lc (shared).
No -lcposix.
Found -lposix.
No -lndir.
No -ldir.
Found -lcrypt (shared).
No -lsec.
No -lucb.
No -lBSD.
No -lPW.
No -lx.
No -liconv.
Found -lutil (shared).

In order to compile perl5 on your machine, a number of libraries
are usually needed. Include any other special libraries here as well.
Say "none" for none. The default list is almost always right.

What libraries to use?
[-lnsl -lndbm -lgdbm -ldb -ldl -lm -lc -lposix -lcrypt -lutil]

By default, perl5 compiles with the -O flag to use the optimizer.
Alternately, you might want to use the symbolic debugger, which uses
the -g flag (on traditional Unix systems). Either flag can be
specified here. To use neither flag, specify the word "none".

What optimizer/debugger flag should be used? [-O2] none

Checking if your compiler accepts -fno-strict-aliasing
Yes, it does.

Your C compiler may want other flags. For this question you should include
-I/whatever and -DWHATEVER flags and any other flags used by the C compiler,
but you should NOT include libraries or ld flags like -lwhatever. If you
want perl5 to honor its debug switch, you should include -DDEBUGGING here.
Your C compiler might also need additional flags, such as -D_POSIX_SOURCE.

To use no flags, specify the word "none".

Any additional cc flags? [-Wall -fno-strict-aliasing -I/usr/local/include]

Let me guess what the preprocessor flags are...
They appear to be​: -Wall -fno-strict-aliasing -I/usr/local/include

Your C linker may need flags. For this question you should
include -L/whatever and any other flags used by the C linker, but you
should NOT include libraries like -lwhatever.

Make sure you include the appropriate -L/path flags if your C linker
does not normally search all of the directories you specified above,
namely
  /usr/local/lib /lib /usr/lib
To use no flags, specify the word "none".

Any additional ld flags (NOT including libraries)? [ -L/usr/local/lib]

Checking your choice of C compiler and flags for coherency...
OK, that should do.

Checking to see how big your integers are...
Your integers are 4 bytes long.
Your long integers are 4 bytes long.
Your short integers are 2 bytes long.

Checking to see how well your C compiler groks the void type...
Good. It appears to support void to the level perl5 wants.
However, you might get some warnings that look like this​:
try.c​: In function `sub'​:
try.c​:12​: warning​: unused variable `foo'
try.c​:9​: warning​: unused variable `hue'
try.c​: In function `main'​:
try.c​:22​: warning​: control reaches end of non-void function

Checking to see how big your pointers are...
Your pointers are 4 bytes long.

Checking to see if you have long long...
You have long long.

Checking to see how big your long longs are...
Your long longs are 8 bytes long.

Computing filename position in cpp output for #include directives...
Your cpp writes the filename in the third field of the line.

<inttypes.h> found.

Checking to see if you have int64_t...
You have int64_t.

Checking which 64-bit integer type we could use...
We could use 'long long' for 64-bit integers.

Perl can be built to take advantage of 64-bit integer types
on some systems. To do so, Configure can be run with -Duse64bitint.
Choosing this option will most probably introduce binary incompatibilities.

If this doesn't make any sense to you, just accept the default 'n'.
(The default has been chosen based on your configuration.)
Try to use 64-bit integers, if available? [n]

You may also choose to try maximal 64-bitness. It means using as much
64-bitness as possible on the platform. This in turn means even more
binary incompatibilities. On the other hand, your platform may not
have any more 64-bitness available than what you already have chosen.

If this doesn't make any sense to you, just accept the default 'n'.
(The default has been chosen based on your configuration.)
Try to use maximal 64-bit support, if available? [n]

Checking for GNU C Library...
You are using the GNU C Library

nm probably won't work on the GNU C Library.

I can use /usr/bin/nm to extract the symbols from your C libraries. This
is a time consuming task which may generate huge output on the disk (up
to 3 megabytes) but that should make the symbols extraction faster. The
alternative is to skip the 'nm' extraction part and to compile a small
test program instead to determine whether each symbol is present. If
you have a fast C compiler and/or if your 'nm' output cannot be parsed,
this may be the best solution.

You probably shouldn't let me use 'nm' if you are using the GNU C Library.

Shall I use /usr/bin/nm to extract C symbols from the libraries? [n]

sqrtl() found.

Perl can be built to take advantage of long doubles which
(if available) may give more accuracy and range for floating point numbers.

If this doesn't make any sense to you, just accept the default 'n'.
Try to use long doubles if available? [n]

Checking to see how big your double precision numbers are...
Your double is 8 bytes long.

Checking to see if you have long double...
You have long double.

Checking to see how big your long doubles are...
Your long doubles are 12 bytes long.

Previous version of perl5 used the standard IO mechanisms as
defined in <stdio.h>. Versions 5.003_02 and later of perl5 allow
alternate IO mechanisms via the PerlIO abstraction layer, but the
stdio mechanism is still available if needed. The abstraction layer
can use AT&T's sfio (if you already have sfio installed) or regular stdio.
Using PerlIO with sfio may cause problems with some extension modules.

If this doesn't make any sense to you, just accept the default 'y'.
Use the PerlIO abstraction layer? [y]

What is your architecture name [i686-linux]
Perlio selected.

By default, perl5 will be installed in /usr/local/bin, manual pages
under /usr/local/man, etc..., i.e. with /usr/local as prefix for all
installation directories. Typically this is something like /usr/local.
If you wish to have binaries under /usr/bin but other parts of the
installation under /usr/local, that's ok​: you will be prompted
separately for each of the installation directories, the prefix being
only used to set the defaults.

Installation prefix to use? (~name ok) [/usr/local]

AFS does not seem to be running...

In some special cases, particularly when building perl5 for distribution,
it is convenient to distinguish between the directory in which files should
be installed from the directory (/usr/local) in which they
will eventually reside. For most users, these two directories are the same.

What installation prefix should I use for installing files? (~name ok)
[/usr/local]

Getting the current patchlevel...
(You have perl5 version 7 subversion 2.)

There are some auxiliary files for perl5 that need to be put into a
private library directory that is accessible by everyone.

Pathname where the private library files will reside? (~name ok)
[/usr/local/lib/perl5/5.7.2]

Perl5 contains architecture-dependent library files. If you are
sharing libraries in a heterogeneous environment, you might store
these files in a separate location. Otherwise, you can just include
them with the rest of the public library files.

Where do you want to put the public architecture-dependent libraries? (~name ok)
[/usr/local/lib/perl5/5.7.2/i686-linux]

This version of Perl can be compiled for binary compatibility with 5.005.
If you decide to do so, you will be able to continue using most of the
extensions that were compiled for Perl 5.005.

Binary compatibility with Perl 5.005? [y]

Some kernels have a bug that prevents setuid #! scripts from being
secure. Some sites have disabled setuid #! scripts because of this.

First let's decide if your kernel supports secure setuid #! scripts.
(If setuid #! scripts would be secure but have been disabled anyway,
don't say that they are secure if asked.)

If you are not sure if they are secure, I can check but I'll need a
username and password different from the one you are using right now.
If you don't have such a username or don't want me to test, simply
enter 'none'.

Other username to test security of setuid scripts with? [none]
Well, the recommended value is *not* secure.
Does your kernel have *secure* setuid scripts? [n]

Some systems have disabled setuid scripts, especially systems where
setuid scripts cannot be secure. On systems where setuid scripts have
been disabled, the setuid/setgid bits on scripts are currently
useless. It is possible for perl5 to detect those bits and emulate
setuid/setgid in a secure fashion. This emulation will only work if
setuid scripts have been disabled in your kernel.

Do you want to do setuid/setgid emulation? [n]

<malloc.h> found.

<stdlib.h> found.

Do you wish to attempt to use the malloc that comes with perl5? [n]

Your system wants malloc to return 'void *', it would seem.
Your system uses void free(), it would seem.

After perl5 is installed, you may wish to install various
add-on modules and utilities. Typically, these add-ons will
be installed under /usr/local with the rest
of this package. However, you may wish to install such add-ons
elsewhere under a different prefix.

If you do not wish to put everything under a single prefix, that's
ok. You will be prompted for the individual locations; this siteprefix
is only used to suggest the defaults.

The default should be fine for most people.

Installation prefix to use for add-on modules and utilities? (~name ok)
[/usr/local]

The installation process will create a directory for
site-specific extensions and modules. Most users find it convenient
to place all site-specific files in this directory rather than in the
main distribution directory.

Pathname for the site-specific library files? (~name ok)
[/usr/local/lib/perl5/site_perl/5.7.2]

The installation process will also create a directory for
architecture-dependent site-specific extensions and modules.

Pathname for the site-specific architecture-dependent library files? (~name ok)
[/usr/local/lib/perl5/site_perl/5.7.2/i686-linux]

The installation process will also create a directory for
vendor-supplied add-ons. Vendors who supply perl with their system
may find it convenient to place all vendor-supplied files in this
directory rather than in the main distribution directory. This will
ease upgrades between binary-compatible maintenance versions of perl.

Of course you may also use these directories in whatever way you see
fit. For example, you might use them to access modules shared over a
company-wide network.

The default answer should be fine for most people.
This causes further questions about vendor add-ons to be skipped
and no vendor-specific directories will be configured for perl.

Do you want to configure vendor-specific add-on directories? [n]

Lastly, you can have perl look in other directories for extensions and
modules in addition to those already specified.
These directories will be searched after
  /usr/local/lib/perl5/site_perl/5.7.2/i686-linux
  /usr/local/lib/perl5/site_perl/5.7.2

Enter a colon-separated set of extra paths to include in perl's @​INC
search path, or enter 'none' for no extra paths.

Colon-separated list of additional directories for perl to search? [none]

Checking out function prototypes...
Your C compiler appears to support function prototypes.

Pathname where the public executables will reside? (~name ok)
[/usr/local/bin]
Looking for a previously installed perl5.005 or later...
Using /usr/bin/perl.

In order to ease the process of upgrading, this version of perl
can be configured to use modules built and installed with earlier
versions of perl that were installed under $prefix. Specify here
the list of earlier versions that this version of perl should check.
If Configure detected no earlier versions of perl installed under
$prefix, then the list will be empty. Answer 'none' to tell perl
to not search earlier versions.

The default should almost always be sensible, so if you're not sure,
just accept the default.
List of earlier versions to include in @​INC? [none]

Many scripts expect perl to be installed as /usr/bin/perl.
I can install the perl you are about to compile also as /usr/bin/perl
(in addition to /usr/local/bin/perl).
Do you want to install perl as /usr/bin/perl? [n]

<dld.h> NOT found.

dlopen() found.

Do you wish to use dynamic loading? [y]
The following dynamic loading files are available​:
ext/DynaLoader/dl_aix.xs ext/DynaLoader/dl_dlopen.xs ext/DynaLoader/dl_mpeix.xs ext/DynaLoader/dl_vms.xs
ext/DynaLoader/dl_beos.xs ext/DynaLoader/dl_dyld.xs ext/DynaLoader/dl_next.xs
ext/DynaLoader/dl_dld.xs ext/DynaLoader/dl_hpux.xs ext/DynaLoader/dl_none.xs
ext/DynaLoader/dl_dllload.xs ext/DynaLoader/dl_mac.xs ext/DynaLoader/dl_vmesa.xs
Source file to use for dynamic loading [ext/DynaLoader/dl_dlopen.xs]

Some systems may require passing special flags to gcc -c to
compile modules that will be used to create a shared library.
To use no flags, say "none".

Any special flags to pass to gcc -c to compile shared library modules?
[-fpic]

Some systems use ld to create libraries that can be dynamically loaded,
while other systems (such as those using ELF) use gcc.

You appear to have ELF support. I'll use gcc to build dynamic libraries.
What command should be used to create dynamic libraries? [gcc]

Some systems may require passing special flags to gcc to create a
library that can be dynamically loaded. If your ld flags include
-L/other/path options to locate libraries outside your loader's normal
search path, you may need to specify those -L options here as well. To
use no flags, say "none".

Any special flags to pass to gcc to create a dynamically loaded library?
[-shared -L/usr/local/lib]

Some systems may require passing special flags to gcc to indicate that
the resulting executable will use dynamic linking. To use no flags,
say "none".

Any special flags to pass to gcc to use dynamic linking? [-rdynamic]

The perl executable is normally obtained by linking perlmain.c with
libperl.a, any static extensions (usually just DynaLoader), and
any other libraries needed on this system (such as -lm, etc.). Since
your system supports dynamic loading, it is probably possible to build
a shared libperl.so. If you will have more than one executable linked
to libperl.so, this will significantly reduce the size of each
executable, but it may have a noticeable affect on performance. The
default is probably sensible for your system.

Build a shared libperl.so (y/n) [n]

System manual is in /usr/man/man1.

Perl5 has manual pages available in source form.
If you don't want the manual sources installed, answer 'none'.

Where do the main Perl5 manual pages (source) go? (~name ok)
[/usr/local/man/man1]
What suffix should be used for the main Perl5 man pages? [1]

You can have filenames longer than 14 characters.

Perl5 has manual pages for many of the library modules.
If you don't want the manual sources installed, answer 'none'.

Where do the perl5 library man pages (source) go? (~name ok)
[/usr/local/man/man3]
What suffix should be used for the perl5 library man pages? [3]

Figuring out host name...
Maybe "hostname" will work...
Your host name appears to be "voxel30". Right? [y]
(You do not have fully-qualified names in the hosts database)
(Attempting domain name extraction from /etc/resolv.conf)

What is your domain name? [.doc.ic.ac.uk]

I need to get your e-mail address in Internet format if possible, i.e.
something like user@​host.domain. Please answer accurately since I have
no easy means to double check it. The default value provided below
is most probably close to reality but may not be valid from outside
your organization...

What is your e-mail address? [epa98@​voxel30.doc.ic.ac.uk] epa98@​doc.ic.ac.uk

If you or somebody else will be maintaining perl at your site, please
fill in the correct e-mail address here so that they may be contacted
if necessary. Currently, the "perlbug" program included with perl
will send mail to this address in addition to perlbug@​perl.org. You may
enter "none" for no administrator.

Perl administrator e-mail address [epa98@​doc.ic.ac.uk]

Do you want to install only the version-specific parts of the perl
distribution? Usually you do *not* want to do this.
Do you want to install only the version-specific parts of perl? [y] n

*** WHOA THERE!!! ***
  The recommended value for $versiononly on this machine was "define"!
  Keep the recommended value? [y]

I don't see why the configuration for the old version of perl should
be relevant to this bug report, but I've obeyed the instruction
below.

Perl Info


Site configuration information for perl 5.00503:

Configured by root at Thu Aug 10 15:31:56 EDT 2000.

Summary of my perl5 (5.0 patchlevel 5 subversion 3) configuration:
  Platform:
    osname=linux, osvers=2.2.5-22smp, archname=i386-linux
    uname='linux porky.devel.redhat.com 2.2.5-22smp #1 smp wed jun 2 09:11:51 edt 1999 i686 unknown '
    hint=recommended, useposix=true, d_sigaction=define
    usethreads=undef useperlio=undef d_sfio=undef
  Compiler:
    cc='cc', optimize='-O2 -m486 -fno-strength-reduce', gccversion=egcs-2.91.66 19990314/Linux (egcs-1.1.2 release)
    cppflags='-Dbool=char -DHAS_BOOL -I/usr/local/include'
    ccflags ='-Dbool=char -DHAS_BOOL -I/usr/local/include'
    stdchar='char', d_stdstdio=undef, usevfork=false
    intsize=4, longsize=4, ptrsize=4, doublesize=8
    d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=12
    alignbytes=4, usemymalloc=n, prototype=define
  Linker and Libraries:
    ld='cc', ldflags =' -L/usr/local/lib'
    libpth=/usr/local/lib /lib /usr/lib
    libs=-lnsl -ldl -lm -lc -lposix -lcrypt
    libc=, so=so, useshrplib=false, libperl=libperl.a
  Dynamic Linking:
    dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-rdynamic'
    cccdlflags='-fpic', lddlflags='-shared -L/usr/local/lib'

Locally applied patches:
    


@INC for perl 5.00503:
    /homes/epa98/lib/perl5
    /homes/epa98/lib/5.005
    /homes/epa98/lib/perl5/5.005/i386-linux
    /homes/epa98/lib/perl5/site_perl
    /homes/epa98/lib/perl5/site_perl/5.005/i386-linux
    /homes/epa98/lib/perl5/site_perl/5.005
    /homes/epa98/lib/perl5/site_perl/5.005/i386-linux
    /vol/linux/redhat/csg
    /usr/lib/perl5/5.00503/i386-linux
    /usr/lib/perl5/5.00503
    /usr/lib/perl5/site_perl/5.005/i386-linux
    /usr/lib/perl5/site_perl/5.005
    .


Environment for perl 5.00503:
    HOME=/homes/epa98
    LANG=en_GB
    LANGUAGE (unset)
    LD_LIBRARY_PATH=/homes/epa98/lib:/homes/epa98/wine/inst/lib:/usr/local/lib
    LOGDIR (unset)
    PATH=/homes/epa98/bin:/homes/epa98/wine/inst/bin:/homes/epa98/lib/ant/bin:/bin:/usr/bin:/usr/local/maple/bin:/vol/lab/cs3/bin:/vol/lab/cs3/bin/i386:/vol/lab/secondyear/bin:/vol/lab/secondyear/bin/i386:/vol/lab/secondyear/bin/Linux/i386:/vol/lab/bin:/vol/lab/bin/i386:/vol/lab/bin/Linux/i386:/usr/kerberos/bin:/usr/X11R6/bin:/usr/local/bin:/opt/bin:/opt/kde/bin:/usr/local/X11/bin:/usr/krb5/bin:/vol/labsrc/src/cocktail/bin:/usr/athena/bin:/sbin:/usr/sbin:/opt/IBMJava2-13/bin:/usr/local/jdk1.2.2/bin:/usr/share/smlnj/bin:/vol/linux/apps/bin:/usr/games:/usr/kerberos/sbin:/usr/libexec/openssh:/vol/csg/public/bin:/homes/dcw/bin
    PERL5LIB=/homes/epa98/lib/perl5:/homes/epa98/lib/5.005:/homes/epa98/lib/perl5/5.005/i386-linux:/homes/epa98/lib/perl5/site_perl:/homes/epa98/lib/perl5/site_perl/5.005:/homes/epa98/lib/perl5/site_perl/5.005/i386-linux:/vol/linux/redhat/csg
    PERL_BADLANG (unset)
    SHELL=/bin/bash

@p5pRT
Copy link
Author

p5pRT commented Sep 9, 2001

From @tamias

This question is discussed at​:
http​://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2001-08/msg00830.html

For development versions, the default value is 'y', but for stable versions
the default is 'n'.

The description is quite misleading. If you say yes, it actually installs
the executables with names like 'perl5.7.2' and 'perldoc5.7.2' rather than
'perl' and 'perldoc'.

Ronald

@p5pRT
Copy link
Author

p5pRT commented Sep 9, 2001

From [Unknown Contact. See original ticket]

[message from 5.7.2 Configure]

Do you want to install only the version-specific parts of the perl
distribution?

This question is discussed at​:
http​://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2001-08/msg00830.html

Funny, I went to
<http​://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/>, entered the
search query 'only the version-specific parts' and no matches were
found. It looks like the search engine is broken.

The description is quite misleading. If you say yes, it actually installs
the executables with names like 'perl5.7.2' and 'perldoc5.7.2' rather than
'perl' and 'perldoc'.

Yes, I noticed that. I get the feeling it would be better to leave the
executable names alone but install in a whole new directory
(/usr/local/perl-5.7.2/, etc) if you want to keep versions separate.
Anyway, the bug here is just that the message doesn't explain things
clearly. It should read something like​:

  Do you want to install executables with a version number in the
  filename? For example, the perl executable might be called
  'perl1.2.3' rather than just 'perl'. For production use, you usually
  don't want to do this, but it is the default for development releases.

Or better still, vary the message according to what default is chosen.

- --
Ed Avis <epa98@​doc.ic.ac.uk>
Finger for PGP key
-----BEGIN PGP SIGNATURE-----
Version​: GnuPG v1.0.6 (GNU/Linux)
Comment​: For info see http​://www.gnupg.org

iD8DBQE7m3XYIMp73jhGogoRAneIAJ9cQR2SjiNLeGIam5vPqNhjI/N4jQCfZH1D
ievUjMuRoyaDo4/S73sMp/0=
=BwOs
-----END PGP SIGNATURE-----

@p5pRT
Copy link
Author

p5pRT commented May 22, 2012

From @Hugmeir

On Sun Sep 09 00​:00​:06 2001, RT_System wrote​:

[message from 5.7.2 Configure]

Do you want to install only the version-specific parts of the perl
distribution?

This question is discussed at​:
http​://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2001-
08/msg00830.html

Funny, I went to
<http​://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/>, entered the
search query 'only the version-specific parts' and no matches were
found. It looks like the search engine is broken.

The description is quite misleading. If you say yes, it actually
installs
the executables with names like 'perl5.7.2' and 'perldoc5.7.2' rather
than
'perl' and 'perldoc'.

Yes, I noticed that. I get the feeling it would be better to leave
the
executable names alone but install in a whole new directory
(/usr/local/perl-5.7.2/, etc) if you want to keep versions separate.
Anyway, the bug here is just that the message doesn't explain things
clearly. It should read something like​:

Do you want to install executables with a version number in the
filename? For example, the perl executable might be called
'perl1.2.3' rather than just 'perl'. For production use, you
usually
don't want to do this, but it is the default for development
releases.

Or better still, vary the message according to what default is chosen.

- --
Ed Avis <epa98@​doc.ic.ac.uk>
Finger for PGP key
-----BEGIN PGP SIGNATURE-----
Version​: GnuPG v1.0.6 (GNU/Linux)
Comment​: For info see http​://www.gnupg.org

iD8DBQE7m3XYIMp73jhGogoRAneIAJ9cQR2SjiNLeGIam5vPqNhjI/N4jQCfZH1D
ievUjMuRoyaDo4/S73sMp/0=
=BwOs
-----END PGP SIGNATURE-----

The same message is still present in recent versions of Perl. Does
anyone want to provide a patch, or can this be closed / marked as a
wishlist item?

@p5pRT
Copy link
Author

p5pRT commented Jul 4, 2016

From @dcollinsn

This patch clarifies the "version-specific" question in Configure and INSTALL.

@p5pRT
Copy link
Author

p5pRT commented Jul 4, 2016

From @dcollinsn

0001-perl-7655-Configure-clarify-version-specific.patch
From 52fb75b5d4be5a3a6b33e4c70da750d003e6ce5f Mon Sep 17 00:00:00 2001
From: Dan Collins <dcollinsn@gmail.com>
Date: Mon, 4 Jul 2016 15:21:05 -0400
Subject: [PATCH] [perl #7655] Configure: clarify "version-specific"

This has long been a confusing configure question. It sounds like
it saves time by installing /less/, but really it just installs
binaries with a version number suffix.
---
 Configure | 11 +++++++----
 INSTALL   |  9 ++++-----
 2 files changed, 11 insertions(+), 9 deletions(-)

diff --git a/Configure b/Configure
index 89585f1..42c67f3 100755
--- a/Configure
+++ b/Configure
@@ -9381,17 +9381,20 @@ rp='Perl administrator e-mail address'
 . ./myread
 perladmin="$ans"
 
-: determine whether to only install version-specific parts.
+: determine whether to use a version number suffix for installed binaries
 echo " "
 $cat <<EOM
-Do you want to install only the version-specific parts of the perl
-distribution?  Usually you do *not* want to do this.
+Do you want to use a version number suffix for installed binaries? This
+will install 'perl$version' instead of 'perl', and likewise for other
+binaries like 'perldoc' and 'cpan'. This allows many versions of perl
+to be installed side-by-side. Unless you are a developer, you probably
+do *not* want to do this.
 EOM
 case "$versiononly" in
 "$define"|[Yy]*|true) dflt='y' ;;
 *) dflt='n';
 esac
-rp="Do you want to install only the version-specific parts of perl?"
+rp="Do you want to use a version number suffix for installed binaries?"
 . ./myread
 case "$ans" in
 [yY]*)	val="$define";;
diff --git a/INSTALL b/INSTALL
index 8c7374e..c80017b 100644
--- a/INSTALL
+++ b/INSTALL
@@ -2285,12 +2285,11 @@ under $archlib so that any user may later build new modules, run the
 optional Perl compiler, or embed the perl interpreter into another
 program even if the Perl source is no longer available.
 
-=head2 Installing only version-specific parts
+=head2 Installing with a version-specific suffix
 
-Sometimes you only want to install the version-specific parts of the perl
-installation.  For example, you may wish to install a newer version of
-perl alongside an already installed production version without
-disabling installation of new modules for the production version.
+Sometimes you only want to install the perl distribution with a
+version-specific suffix.  For example, you may wish to install a newer
+version of perl alongside an already installed production version.
 To only install the version-specific parts of the perl installation, run
 
 	Configure -Dversiononly
-- 
2.8.1

@p5pRT
Copy link
Author

p5pRT commented Jul 15, 2016

From @dcollinsn

On Mon Jul 04 12​:57​:24 2016, dcollinsn@​gmail.com wrote​:

This patch clarifies the "version-specific" question in Configure and
INSTALL.

Is anyone able to review this language and apply?

--
Respectfully,
Dan Collins

@p5pRT
Copy link
Author

p5pRT commented Jul 15, 2016

From @cpansprout

On Thu Jul 14 17​:39​:07 2016, dcollinsn@​gmail.com wrote​:

On Mon Jul 04 12​:57​:24 2016, dcollinsn@​gmail.com wrote​:

This patch clarifies the "version-specific" question in Configure and
INSTALL.

Is anyone able to review this language and apply?

Yes, thank you. That is a big improvement. I have applied it as 6baaafe.

--

Father Chrysostomos

@p5pRT
Copy link
Author

p5pRT commented Jul 15, 2016

@cpansprout - Status changed from 'open' to 'pending release'

@p5pRT
Copy link
Author

p5pRT commented May 30, 2017

From @khwilliamson

Thank you for filing this report. You have helped make Perl better.

With the release today of Perl 5.26.0, this and 210 other issues have been
resolved.

Perl 5.26.0 may be downloaded via​:
https://metacpan.org/release/XSAWYERX/perl-5.26.0

If you find that the problem persists, feel free to reopen this ticket.

@p5pRT
Copy link
Author

p5pRT commented May 30, 2017

@khwilliamson - Status changed from 'pending release' to 'resolved'

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant