[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index][Thread Index][Top&Search][Original]
File::Glob in failure perl5.05_63 XSLoader on OpenBSD 2.6
[I perlbugged this, but it never seems to have shown up]
I've had problems getting 63 installed on OpenBSD 2.6. This seems to be
related to the new "File/Glob.pm" module. (Or maybe to "XSLoader.pm",
which I hadn't heard about; its docs are sparse at best.)
When you try to do a make install, you get this:
./perl installperl
Can't load 'lib/auto/File/Glob/Glob.so' for module File::Glob:
No such file or directory at lib/XSLoader.pm line 73.
at lib/File/Glob.pm line 94
Compilation failed in require at installperl line 65.
BEGIN failed--compilation aborted at installperl line 65.
That's what's happening with make install, which hacks up its own @INC.
I get 100% compliance on make test, too. (Well, once rand#7 failed,
but not repeatably!).
Here's a bit more investigation:
% pwd
/usr/local/src/perl5.005_63
% ./perl -le 'print <*.y>'
Can't locate File/Glob.pm in @INC (@INC contains: /usr/local/lib/perl5/5.00563/OpenBSD.i386-openbsd /usr/local/lib/perl5/5.00563 /usr/local/lib/site_perl/5.00563/OpenBSD.i386-openbsd /usr/local/lib/site_perl .) at -e line 1.
BEGIN failed--compilation aborted at -e line 1.
Exit 2
% ./perl -Ilib -le 'print <*.y>'
Can't load 'lib/auto/File/Glob/Glob.so' for module File::Glob: No such file or directory at lib/XSLoader.pm line 73.
at lib/File/Glob.pm line 94
Compilation failed in require at -e line 1.
BEGIN failed--compilation aborted at -e line 1.
Exit 255
% ls -l lib/auto/File/Glob/Glob.so
-rwxr-xr-x 1 tchrist wheel 17971 Dec 11 08:30 lib/auto/File/Glob/Glob.so
Now, isn't that odd? It's there, but it can't find it. Let's
try something else...
% ./perl -I $cwd/lib -le 'print <*.y>'
perly.y
See that? If you give a path that's absolute, not relative,
it works. Isn't that interesting? It gets better.
% cd t
% ../perl op/glob.t
1..6
ok 1
ok 2
ok 3
ok 4
ok 5
ok 6
Now, why did that work. Oh. The test loads @INC to contain
"../lib".
% ../perl -I ../lib -le 'print join(" ", <*>)'
README TEST UTEST base cmd comp harness io lib op perl pod pragma
So it's not just absolute it works in. It's ok with "../lib"
as well.
I started looking through DynaLoader.pm for instances of "dir"
and path mungeing, but there's so much of it, I thought I'd stop
now and mail it in.
Here's what I'm running:
% ./perl -Ilib -V
Summary of my perl5 (revision 5.0 version 5 subversion 63) configuration:
Platform:
osname=openbsd, osvers=2.6, archname=OpenBSD.i386-openbsd
uname='openbsd neldoreth 2.6 generic#680 i386 '
config_args='-des'
hint=recommended, useposix=true, d_sigaction=define
usethreads=undef useperlio=undef d_sfio=undef
use64bits=undef usemultiplicity=undef
Compiler:
cc='cc', optimize='-O2', gccversion=2.95.1 19990816 (release)
cppflags='-fno-strict-aliasing -I/usr/local/include'
ccflags ='-fno-strict-aliasing -I/usr/local/include'
stdchar='char', d_stdstdio=undef, usevfork=true
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='ld', ldflags =' -L/usr/local/lib'
libpth=/usr/local/lib /usr/lib
libs=-lm -lc
libc=/usr/lib/libc.so.23.1, so=so, useshrplib=false, libperl=libperl.a
Dynamic Linking:
dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=define, ccdlflags=' '
cccdlflags='-DPIC -fPIC ', lddlflags='-Bforcearchive -Bshareable -L/usr/local/lib'
Characteristics of this binary (from libperl):
Compile-time options:
Built under openbsd
Compiled at Dec 11 1999 08:24:52
%ENV:
PERL_READLINE_NOWARN="1"
@INC:
lib
/usr/local/lib/perl5/5.00563/OpenBSD.i386-openbsd
/usr/local/lib/perl5/5.00563
/usr/local/lib/site_perl/5.00563/OpenBSD.i386-openbsd
/usr/local/lib/site_perl
.
--tom
- Follow-Ups from:
-
Ilya Zakharevich <ilya@math.ohio-state.edu>
[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index][Thread Index][Top&Search][Original]