Front page | perl.perl5.porters |
Postings from November 2013
[perl #120628] $Config{perlpath} is incorrect for relocatable perl
Thread Next
From:
Darin McBride
Date:
November 25, 2013 20:08
Subject:
[perl #120628] $Config{perlpath} is incorrect for relocatable perl
Message ID:
rt-4.0.18-13682-1385410069-945.120628-75-0@perl.org
# New Ticket Created by Darin McBride
# Please include the string: [perl #120628]
# in the subject line of all future correspondence about this issue.
# <URL: https://rt.perl.org/Ticket/Display.html?id=120628 >
This is a bug report for perl from dmcbride@cpan.org,
generated with the help of perlbug 1.39 running under perl 5.19.7.
-----------------------------------------------------------------
[Please describe your issue here]
If I use a relocatable perl (-Duserelocatableinc), $Config::Config{perlpath}
is incorrect. I'm not sure if this is by design or merely an oversight.
If it's by design, the documentation for Config may need to call this
out as something that should not be used for relocatable perls (and to use
$^X instead).
If it's an oversight, the following patch seems sufficient. It at least
gets Proc::FastSpawn to test/install successfully, which is where I first
encountered this issue.
diff --git a/Configure b/Configure
index 071b5ec..b0e4bba 100755
--- a/Configure
+++ b/Configure
@@ -8939,8 +8939,8 @@ echo "I'll use $startperl to start perl scripts."
case "$perlpath" in
'')
case "$versiononly" in
- "$define") perlpath="$initialinstalllocation/perl$version";;
- *) perlpath="$initialinstalllocation/perl";;
+ "$define") perlpath="${binexp}perl$version";;
+ *) perlpath="${binexp}perl";;
esac
case "$startperl" in
*!*) ;;
diff --git a/configpm b/configpm
index fbc4710..cfbf2c3 100755
--- a/configpm
+++ b/configpm
@@ -436,6 +436,7 @@ if (fetch_string({},'userelocatableinc')) {
man1direxp
man3direxp
privlibexp
+ perlpath
scriptdirexp
sitearchexp
sitebinexp
[Please do not change anything below this line]
-----------------------------------------------------------------
---
Flags:
category=library
severity=low
module=Config
---
Site configuration information for perl 5.19.7:
Configured by dmcbride at Mon Nov 25 11:21:52 MST 2013.
Summary of my perl5 (revision 5 version 19 subversion 7) configuration:
Derived from: ea5eb3d3ca6e00870adfc543a2364826e1c0f77e
Platform:
osname=linux, osvers=3.11.6-gentoo, archname=x86_64-linux-thread-multi
uname='linux naboo 3.11.6-gentoo #1 smp fri nov 1 15:30:00 mdt 2013 x86_64 intel(r) core(tm) i7 cpu 930 @ 2.80ghz genuineintel gnulinux '
config_args='-desr -Duse64bitall -Duselongdoubles -Dusethreads -Dprefix=/home/dmcbride/perl/blead -Dusedevel -Duserelocatableinc'
hint=recommended, useposix=true, d_sigaction=define
useithreads=define, usemultiplicity=define
useperlio=define, d_sfio=undef, uselargefiles=define, usesocks=undef
use64bitint=define, use64bitall=define, uselongdouble=undef
usemymalloc=n, bincompat5005=undef
Compiler:
cc='cc', ccflags ='-D_REENTRANT -D_GNU_SOURCE -fno-strict-aliasing -pipe -fstack-protector -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64',
optimize='-O2',
cppflags='-D_REENTRANT -D_GNU_SOURCE -fno-strict-aliasing -pipe -fstack-protector'
ccversion='', gccversion='4.7.3', gccosandvers=''
intsize=4, longsize=8, ptrsize=8, doublesize=8, byteorder=12345678
d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=16
ivtype='long', ivsize=8, nvtype='double', nvsize=8, Off_t='off_t', lseeksize=8
alignbytes=8, prototype=define
Linker and Libraries:
ld='cc', ldflags =' -fstack-protector -L/usr/local/lib'
libpth=/usr/local/lib /lib/../lib64 /usr/lib/../lib64 /lib /usr/lib /lib64 /usr/lib64 /usr/local/lib64
libs=-lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lpthread -lc -lgdbm_compat
perllibs=-lnsl -ldl -lm -lcrypt -lutil -lpthread -lc
libc=/lib/libc-2.15.so, so=so, useshrplib=false, libperl=libperl.a
gnulibc_version='2.15'
Dynamic Linking:
dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-Wl,-E'
cccdlflags='-fPIC', lddlflags='-shared -O2 -L/usr/local/lib -fstack-protector'
Locally applied patches:
uncommitted-changes
---
@INC for perl 5.19.7:
/home/dmcbride/tmp/blead-perl/home/dmcbride/perl/blead/lib/site_perl/5.19.7/x86_64-linux-thread-multi
/home/dmcbride/tmp/blead-perl/home/dmcbride/perl/blead/lib/site_perl/5.19.7
/home/dmcbride/tmp/blead-perl/home/dmcbride/perl/blead/lib/5.19.7/x86_64-linux-thread-multi
/home/dmcbride/tmp/blead-perl/home/dmcbride/perl/blead/lib/5.19.7
.
---
Environment for perl 5.19.7:
HOME=/home/dmcbride
LANG=en_US.utf8
LANGUAGE=
LC_ALL=en_US.utf8
LD_LIBRARY_PATH (unset)
LOGDIR (unset)
PATH=/home/dmcbride/bin:/usr/lib/distcc/bin:/usr/bin:/bin:/opt/bin:/usr/x86_64-pc-linux-gnu/gcc-bin/4.7.3:/usr/x86_64-pc-linux-gnu/i686-pc-linux-gnu/gcc-bin/4.6.3:/opt/android-sdk-update-manager/tools:/opt/android-sdk-update-manager/platform-tools:/opt/nvidia-cg-toolkit/bin:/share/cvs/bin:/usr/local/bin:/usr/games/bin:/share/bin:/share/darin/bin
PERL_BADLANG (unset)
SHELL=/bin/bash
Thread Next
-
[perl #120628] $Config{perlpath} is incorrect for relocatable perl
by Darin McBride