Subject: | Fails Makefile.PL with no '.' in @INC |
A recent security patch to Perl itself removed '.', the current working
directory, from \@INC, the default search path for 'use', 'do', and
'require'. This fix for CVE-2016-1238 will be part of Perl 5.26.0, due
to be released this April, 2017. CPAN clients will *temporarily*
provide backwards compatibility during the module build/test process
by setting the environment variable PERL_USE_UNSAFE_INC=1 during build,
test, and install. HOWEVER:
1) This environment variable is a temporary fix only for compatibility,
due to be removed for Perl 5.30.0.
2) This may mask errors in your module itself, by testing your module
under different conditions than those that it will actually be run
under.
To read more about this, you may find the following links helpful:
* http://blogs.perl.org/users/todd_rinaldo/2016/11/how-removing-from-inc-is-about-to-break-cpan.html
* https://www.perlmonks.org/?node_id=1186105
* http://www.nntp.perl.org/group/perl.perl5.porters/2017/03/msg243722.html
During a smoke-test of all of cpan, your distribution was found to be unable
to configure, build, test, or install without adding '.' to @INC. This means
that your distribution *will* stop building properly for all users when the
CPAN clients remove this temporary compatibility fix, and that it *may*
already have problems when `use`d, problems which are being masked by this
temporary compatibility fix.
A full error log follows:
----
Output from '/home/cpan2/install/bin/perl Makefile.PL':
Can't locate inc/Module/Package.pm in @INC (you may need to install the inc::Module::Package module) (@INC contains: /tmp/CPAN-Reporter-lib-FyA2 /home/cpan2/install/lib/perl5/site_perl/5.26.0/x86_64-linux-thread-multi /home/cpan2/install/lib/perl5/site_perl/5.26.0 /home/cpan2/install/lib/perl5/5.26.0/x86_64-linux-thread-multi /home/cpan2/install/lib/perl5/5.26.0) at Makefile.PL line 1.
BEGIN failed--compilation aborted at Makefile.PL line 1.
------------------------------
PREREQUISITES
------------------------------
Prerequisite modules loaded:
configure_requires:
Module Need Have
------------------- ---- -------
ExtUtils::MakeMaker 6.59 7.25_01
------------------------------
ENVIRONMENT AND OTHER CONTEXT
------------------------------
Environment variables:
AUTOMATED_TESTING = 1
HARNESS_OPTIONS = j3
LANG = en_US.UTF-8
PATH = /usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games
PERL = /home/cpan2/install/bin/perl
PERL5LIB =
PERL5OPT = -I/tmp/CPAN-Reporter-lib-FyA2 -MDevel::Autoflush
PERL5_CPANPLUS_IS_RUNNING = 3413
PERL5_CPAN_IS_EXECUTING = /home/cpan2/.cpan/build/HTML-HTML5-Writer-0.201-0/Makefile.PL
PERL5_CPAN_IS_RUNNING = 3413
PERL5_CPAN_IS_RUNNING_IN_RECURSION = 28757,3413
PERL_AUTOINSTALL = --defaultdeps
PERL_CR_SMOKER_CURRENT = RDF-LinkedData-0.78
PERL_CR_SMOKER_RUNONCE = 1
PERL_EXTUTILS_AUTOINSTALL = --defaultdeps
PERL_MM_USE_DEFAULT = 1
PERL_USE_UNSAFE_INC = 0
SHELL = /bin/bash
TERM = putty-256color
Perl special variables (and OS-specific diagnostics, for MSWin32):
$^X = /home/cpan2/install/bin/perl
$UID/$EUID = 1003 / 1003
$GID = 1003 1003
$EGID = 1003 1003
Perl module toolchain versions installed:
Module Have
------------------- --------
CPAN 2.16
CPAN::Meta 2.150010
Cwd 3.67
ExtUtils::CBuilder 0.280225
ExtUtils::Command 7.25_01
ExtUtils::Install 2.04
ExtUtils::MakeMaker 7.25_01
ExtUtils::Manifest 1.70
ExtUtils::ParseXS 3.34
File::Spec 3.67
JSON 2.91_04
JSON::PP 2.91_04
Module::Build 0.4222
Module::Signature n/a
Parse::CPAN::Meta 2.150010
Test::Harness 3.39
Test::More 1.302081
YAML 1.23
YAML::Syck 1.29
version 0.9917
--
Summary of my perl5 (revision 5 version 26 subversion 0) configuration:
Commit id: f57d8456e7b8d6b2dad0bb49899cfdc68007b794
Platform:
osname=linux
osvers=3.16.0-4-amd64
archname=x86_64-linux-thread-multi
uname='linux digitalis 3.16.0-4-amd64 #1 smp debian 3.16.36-1+deb8u2 (2016-10-19) x86_64 gnulinux '
config_args='-Dusedevel -DDEBUGGING -Dusethreads -Dprefix=/home/cpan2/install -Uversiononly -des'
hint=recommended
useposix=true
d_sigaction=define
useithreads=define
usemultiplicity=define
use64bitint=define
use64bitall=define
uselongdouble=undef
usemymalloc=n
default_inc_excludes_dot=define
bincompat5005=undef
Compiler:
cc='cc'
ccflags ='-D_REENTRANT -D_GNU_SOURCE -fwrapv -DDEBUGGING -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2'
optimize='-O2 -g'
cppflags='-D_REENTRANT -D_GNU_SOURCE -fwrapv -DDEBUGGING -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include'
ccversion=''
gccversion='4.9.2'
gccosandvers=''
intsize=4
longsize=8
ptrsize=8
doublesize=8
byteorder=12345678
doublekind=3
d_longlong=define
longlongsize=8
d_longdbl=define
longdblsize=16
longdblkind=3
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-strong -L/usr/local/lib'
libpth=/usr/local/lib /usr/lib/gcc/x86_64-linux-gnu/4.9/include-fixed /usr/include/x86_64-linux-gnu /usr/lib /lib/x86_64-linux-gnu /lib/../lib /usr/lib/x86_64-linux-gnu /usr/lib/../lib /lib /lib64 /usr/lib64
libs=-lpthread -lnsl -ldl -lm -lcrypt -lutil -lc
perllibs=-lpthread -lnsl -ldl -lm -lcrypt -lutil -lc
libc=libc-2.19.so
so=so
useshrplib=false
libperl=libperl.a
gnulibc_version='2.19'
Dynamic Linking:
dlsrc=dl_dlopen.xs
dlext=so
d_dlsymun=undef
ccdlflags='-Wl,-E'
cccdlflags='-fPIC'
lddlflags='-shared -O2 -g -L/usr/local/lib -fstack-protector-strong'
Characteristics of this binary (from libperl):
Compile-time options:
DEBUGGING
HAS_TIMES
MULTIPLICITY
PERLIO_LAYERS
PERL_COPY_ON_WRITE
PERL_DONT_CREATE_GVSV
PERL_IMPLICIT_CONTEXT
PERL_MALLOC_WRAP
PERL_OP_PARENT
PERL_PRESERVE_IVUV
PERL_TRACK_MEMPOOL
PERL_USE_DEVEL
USE_64_BIT_ALL
USE_64_BIT_INT
USE_ITHREADS
USE_LARGE_FILES
USE_LOCALE
USE_LOCALE_COLLATE
USE_LOCALE_CTYPE
USE_LOCALE_NUMERIC
USE_LOCALE_TIME
USE_PERLIO
USE_PERL_ATOF
USE_REENTRANT_API
Built under linux
Compiled at Apr 11 2017 21:42:25
%ENV:
PERL="/home/cpan2/install/bin/perl"
PERL5LIB=""
PERL5OPT=""
PERL5_CPANPLUS_IS_RUNNING="3413"
PERL5_CPAN_IS_EXECUTING="/home/cpan2/.cpan/build/HTML-HTML5-Writer-0.201-0/Makefile.PL"
PERL5_CPAN_IS_RUNNING="3413"
PERL5_CPAN_IS_RUNNING_IN_RECURSION="28757,3413"
PERL_AUTOINSTALL="--defaultdeps"
PERL_CR_SMOKER_CURRENT="RDF-LinkedData-0.78"
PERL_CR_SMOKER_RUNONCE="1"
PERL_EXTUTILS_AUTOINSTALL="--defaultdeps"
PERL_MM_USE_DEFAULT="1"
PERL_USE_UNSAFE_INC="0"
@INC:
/home/cpan2/install/lib/perl5/site_perl/5.26.0/x86_64-linux-thread-multi
/home/cpan2/install/lib/perl5/site_perl/5.26.0
/home/cpan2/install/lib/perl5/5.26.0/x86_64-linux-thread-multi
/home/cpan2/install/lib/perl5/5.26.0