Subject: | installation problems when no read permissions in some parent directories |
I'm trying to install Inline 0.44 on my web host's shell account. For
some reason, the /home directory isn't readable. Anyway, this seriously
upsets Inline's installation.
bash-2.05a$ ls -ld $HOME
drwx--x--x 38 microshi microshi 4096 Jul 27 14:46 /home/microshi
bash-2.05a$ ls -ld $HOME/..
drwx--x--x 266 root root 8192 Jul 27 05:43 /home/microshi/..
bash-2.05a$ ls -ld $HOME/../..
drwxr-xr-x 20 root root 4096 May 11 13:05 /home/microshi/../..
# MakeMaker ARGV: (q[PREFIX=~/perl], q[LIB=~/perl/lib])
# NAME => q[Inline]
# PREREQ_PM => { File::Spec=>q[0.8], Digest::MD5=>q[2.09],
Data::Dumper=>q[2.09], Parse::RecDescent=>q[1.8] }
# VERSION_FROM => q[Inline.pm]
# clean => { FILES=>q[_Inline_test _Inline .Inline] }
So when I run 'make test' I get:
PERL_DL_NONLAZY=1 /usr/local/bin/perl -Iblib/arch -Iblib/lib
-I/usr/lib/perl5/5.6.1/i386-linux -I/usr/lib/perl5/5.6.1 -e 'use
Test::Harness qw(&runtests $verbose); $verbose=0; runtests @ARGV;' t/*.t
t/00init......ok
t/01usages....opendir(_Inline_test/../../../../..): Permission denied at
blib/lib/Inline.pm line 371
opendir(/home/microshi/..): Permission denied at blib/lib/Inline.pm
(autosplit into blib/lib/auto/Inline/find_temp_dir.al) line 1249
opendir(./../../../..): Permission denied at blib/lib/Inline.pm
(autosplit into blib/lib/auto/Inline/find_temp_dir.al) line 1251
opendir(./../../../..): Permission denied at
/usr/lib/perl5/5.6.1/FindBin.pm line 143
stat(/t/): No such file or directory at /usr/lib/perl5/5.6.1/FindBin.pm
line 162
stat(/t/): No such file or directory at /usr/lib/perl5/5.6.1/FindBin.pm
line 163
Uncaught exception from user code:
Uncaught exception from user code:
Couldn't find an appropriate DIRECTORY for Inline to use.
at t/01usages.t line 19
Carp::croak('Couldn\'t find an appropriate DIRECTORY for Inline
to use.^J^J') called at blib/lib/Inline.pm (autosplit into
blib/lib/auto/Inline/find_temp_dir.al) line 1296
Inline::find_temp_dir('Inline=HASH(0x8274f68)') called at
blib/lib/Inline.pm (autosplit into
blib/lib/auto/Inline/check_config_file.al) line 688
Inline::check_config_file('Inline=HASH(0x8274f68)') called at
blib/lib/Inline.pm line 242
Inline::glue('Inline=HASH(0x8274f68)') called at
blib/lib/Inline.pm line 144
Inline::import('Inline', 'Foo', 't/file') called at t/01usages.t
line 19
main::BEGIN() called at /usr/lib/perl5/5.6.1/FindBin.pm line 19
eval {...} called at /usr/lib/perl5/5.6.1/FindBin.pm line 19
BEGIN failed--compilation aborted at t/01usages.t line 19.
I have also tried exporting PERL_INLINE_DIRECTORY (set to an existing
directory $HOME/.Inline), which doesn't seem to help. However, the
failure is in a different call to abs_path() or cwd()...
bash-2.05a$ export PERL_INLINE_DIRECTORY=/home/microshi/.Inline/
bash-2.05a$ ls -ld $PERL_INLINE_DIRECTORY
drwxr-xr-x 2 microshi microshi 4096 Jul 27 14:46
/home/microshi/.Inline/
bash-2.05a$ perl Makefile.PL PREFIX=~/perl LIB=~/lib
bash-2.05a$ make test
make[1]: Entering directory `/home/microshi/.cpan/build/Inline-0.44/C'
make[1]: Leaving directory `/home/microshi/.cpan/build/Inline-0.44/C'
PERL_DL_NONLAZY=1 /usr/local/bin/perl -Iblib/arch -Iblib/lib
-I/usr/lib/perl5/5.6.1/i386-linux -I/usr/lib/perl5/5.6.1 -e 'use
Test::Harness qw(&runtests $verbose); $verbose=0; runtests @ARGV;' t/*.t
t/00init......ok
t/01usages....opendir(_Inline_test/../../../../..): Permission denied at
blib/lib/Inline.pm line 371
opendir(/home/microshi/..): Permission denied at blib/lib/Inline.pm
(autosplit into blib/lib/auto/Inline/find_temp_dir.al) line 1249
opendir(/home/microshi/.Inline//../..): Permission denied at
blib/lib/Inline.pm (autosplit into
blib/lib/auto/Inline/find_temp_dir.al) line 1298
Can't open /config for output.
at -e line 0
BEGIN failed--compilation aborted.
Uncaught exception from user code:
Uncaught exception from user code:
Failed to autogenerate /config.
at t/01usages.t line 19
Carp::croak('Failed to autogenerate /config.^J^J') called at
blib/lib/Inline.pm (autosplit into
blib/lib/auto/Inline/create_config_file.al) line 750
Inline::create_config_file('Inline=HASH(0x83209c4)', '') called
at blib/lib/Inline.pm (autosplit into
blib/lib/auto/Inline/check_config_file.al) line 692
Inline::check_config_file('Inline=HASH(0x83209c4)') called at
blib/lib/Inline.pm line 242
Inline::glue('Inline=HASH(0x83209c4)') called at
blib/lib/Inline.pm line 144
Inline::import('Inline', 'Foo', 't/file') called at t/01usages.t
line 19
main::BEGIN() called at t/01usages.t line 19
eval {...} called at t/01usages.t line 19
BEGIN failed--compilation aborted at t/01usages.t line 19.