Hi, the CPAN::Shell perl module is installed but when called in a script an error message advises installing it.
Clues please? Macintosh-2:~ root# cat ./update.no.version.sh #!/sw/bin/perl # install my favorite programs if necessary: for $mod (qw(Net::FTP MD5 Data::Dumper)){ my $obj = CPAN::Shell->expand('Module',$mod); $obj->install; } # list all modules on my disk that have no VERSION number for $mod (CPAN::Shell->expand("Module","/./")){ next unless $mod->inst_file; # MakeMaker convention for undefined $VERSION: next unless $mod->inst_version eq "undef"; print "No VERSION in ", $mod->id, "\n"; } Macintosh-2:~ root# perl -MCPAN -e 'install CPAN::Shell' Macintosh-2:~ root# ./update.no.version.sh Can't locate object method "expand" via package "CPAN::Shell" (perhaps you forgot to load "CPAN::Shell"?) at ./update.no.version.sh line 5. Macintosh-2:~ root# which perl /sw/bin/perl Macintosh-2:~ root# perl -v This is perl, v5.8.8 built for darwin-thread-multi-2level Copyright 1987-2006, Larry Wall Perl may be copied only under the terms of either the Artistic License or the GNU General Public License, which may be found in the Perl 5 source kit. Complete documentation for Perl, including FAQ lists, should be found on this system using "man perl" or "perldoc perl". If you have access to the Internet, point your browser at http://www.perl.org/, the Perl Home Page. Macintosh-2:~ root# /sw/bin/perl -v This is perl, v5.8.8 built for darwin-thread-multi-2level Copyright 1987-2006, Larry Wall Perl may be copied only under the terms of either the Artistic License or the GNU General Public License, which may be found in the Perl 5 source kit. Complete documentation for Perl, including FAQ lists, should be found on this system using "man perl" or "perldoc perl". If you have access to the Internet, point your browser at http://www.perl.org/, the Perl Home Page. Macintosh-2:~ root# /sw/bin/perl -V Summary of my perl5 (revision 5 version 8 subversion 8) configuration: Platform: osname=darwin, osvers=8.10.1, archname=darwin-thread-multi-2level uname='darwin macintosh-2.local 8.10.1 darwin kernel version 8.10.1: wed may 23 16:33:00 pdt 2007; root:xnu-792.22.5~1release_i386 i386 i386 ' config_args='-des -Dcc=gcc -Dcpp=gcc -E -Dprefix=/sw -Dccflags=-I/sw/include -Dldflags=-L/sw/lib -Dperladmin=none -Uinstallusrbinperl -Dprivlib=/sw/lib/perl5-core/5.8.8 -Darchlib=/sw/lib/perl5-core/5.8.8/darwin-thread-multi-2level -Dman3dir=/sw/lib/perl5-core/5.8.8/man/man3 -Dman3ext=3pm -Duseithreads -Dinc_version_list=5.8.8/darwin-thread-multi-2level 5.8.6/darwin-thread-multi-2level 5.8.1 5.8.0 5.6.0 -Adefine:startperl=#!/sw/bin/perl5.8.8' hint=recommended, useposix=true, d_sigaction=define usethreads=define use5005threads=undef useithreads=define usemultiplicity=define useperlio=define d_sfio=undef uselargefiles=define usesocks=undef use64bitint=undef use64bitall=undef uselongdouble=undef usemymalloc=n, bincompat5005=undef Compiler: cc='gcc', ccflags ='-I/sw/include -fno-common -DPERL_DARWIN -no-cpp-precomp -fno-strict-aliasing -pipe -Wdeclaration-after-statement -I/usr/local/include -I/opt/local/include', optimize='-O3', cppflags='-no-cpp-precomp -I/sw/include -fno-common -DPERL_DARWIN -no-cpp-precomp -fno-strict-aliasing -pipe -Wdeclaration-after-statement -I/usr/local/include -I/opt/local/include' ccversion='', gccversion='4.0.1 (Apple Computer, Inc. build 5367)', gccosandvers='' intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=1234 d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=16 ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t', lseeksize=8 alignbytes=8, prototype=define Linker and Libraries: ld='env MACOSX_DEPLOYMENT_TARGET=10.3 cc', ldflags ='-L/sw/lib -L/usr/local/lib -L/opt/local/lib' libpth=/usr/local/lib /opt/local/lib /usr/lib libs=-ldbm -ldl -lm -lc perllibs=-ldl -lm -lc libc=/usr/lib/libc.dylib, so=dylib, useshrplib=false, libperl=libperl.a gnulibc_version='' Dynamic Linking: dlsrc=dl_dlopen.xs, dlext=bundle, d_dlsymun=undef, ccdlflags=' ' cccdlflags=' ', lddlflags='-L/sw/lib -bundle -undefined dynamic_lookup -L/usr/local/lib -L/opt/local/lib' Characteristics of this binary (from libperl): Compile-time options: MULTIPLICITY PERL_IMPLICIT_CONTEXT PERL_MALLOC_WRAP USE_ITHREADS USE_LARGE_FILES USE_PERLIO USE_REENTRANT_API Built under darwin Compiled at Aug 9 2007 21:52:20 @INC: /sw/lib/perl5-core/5.8.8/darwin-thread-multi-2level /sw/lib/perl5-core/5.8.8 /sw/lib/perl5/site_perl/5.8.8/darwin-thread-multi-2level /sw/lib/perl5/site_perl/5.8.8 /sw/lib/perl5/site_perl/5.8.8/darwin-thread-multi-2level /sw/lib/perl5/site_perl . Macintosh-2:~ root# which perl /sw/bin/perl Macintosh-2:~ root# ./update.no.version.sh Can't locate object method "expand" via package "CPAN::Shell" (perhaps you forgot to load "CPAN::Shell"?) at ./update.no.version.sh line 5. Macintosh-2:~ root# /sw/bin/perl -V | less Summary of my perl5 (revision 5 version 8 subversion 8) configuration: Platform: osname=darwin, osvers=8.10.1, archname=darwin-thread-multi-2level uname='darwin macintosh-2.local 8.10.1 darwin kernel version 8.10.1: wed may 23 16:33:00 pdt 2007; root:xnu-792.22.5~1release_i386 i386 i386 ' config_args='-des -Dcc=gcc -Dcpp=gcc -E -Dprefix=/sw -Dccflags=-I/sw/include -D ldflags=-L/sw/lib -Dperladmin=none -Uinstallusrbinperl -Dprivlib=/sw/lib/perl5-core /5.8.8 -Darchlib=/sw/lib/perl5-core/5.8.8/darwin-thread-multi-2level -Dman3dir=/sw/ lib/perl5-core/5.8.8/man/man3 -Dman3ext=3pm -Duseithreads -Dinc_version_list=5.8.8/ darwin-thread-multi-2level 5.8.6/darwin-thread-multi-2level 5.8.1 5.8.0 5.6.0 -Adef ine:startperl=#!/sw/bin/perl5.8.8' hint=recommended, useposix=true, d_sigaction=define usethreads=define use5005threads=undef useithreads=define usemultiplicity=defin e useperlio=define d_sfio=undef uselargefiles=define usesocks=undef use64bitint=undef use64bitall=undef uselongdouble=undef usemymalloc=n, bincompat5005=undef Compiler: cc='gcc', ccflags ='-I/sw/include -fno-common -DPERL_DARWIN -no-cpp-precomp -fn o-strict-aliasing -pipe -Wdeclaration-after-statement -I/usr/local/include -I/opt/l ocal/include', optimize='-O3', cppflags='-no-cpp-precomp -I/sw/include -fno-common -DPERL_DARWIN -no-cpp-preco mp -fno-strict-aliasing -pipe -Wdeclaration-after-statement -I/usr/local/include -I /opt/local/include' ccversion='', gccversion='4.0.1 (Apple Computer, Inc. build 5367)', gccosandver s='' intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=1234 d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=16 ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t', lseeksize=8 alignbytes=8, prototype=define Linker and Libraries: ld='env MACOSX_DEPLOYMENT_TARGET=10.3 cc', ldflags ='-L/sw/lib -L/usr/local/lib -L/opt/local/lib' libpth=/usr/local/lib /opt/local/lib /usr/lib libs=-ldbm -ldl -lm -lc perllibs=-ldl -lm -lc libc=/usr/lib/libc.dylib, so=dylib, useshrplib=false, libperl=libperl.a gnulibc_version='' Dynamic Linking: dlsrc=dl_dlopen.xs, dlext=bundle, d_dlsymun=undef, ccdlflags=' ' cccdlflags=' ', lddlflags='-L/sw/lib -bundle -undefined dynamic_lookup -L/usr/l ocal/lib -L/opt/local/lib' Characteristics of this binary (from libperl): Compile-time options: MULTIPLICITY PERL_IMPLICIT_CONTEXT PERL_MALLOC_WRAP USE_ITHREADS USE_LARGE_FILES USE_PERLIO USE_REENTRANT_API Built under darwin Compiled at Aug 9 2007 21:52:20 @INC: /sw/lib/perl5-core/5.8.8/darwin-thread-multi-2level /sw/lib/perl5-core/5.8.8 /sw/lib/perl5/site_perl/5.8.8/darwin-thread-multi-2level /sw/lib/perl5/site_perl/5.8.8 /sw/lib/perl5/site_perl/5.8.8/darwin-thread-multi-2level /sw/lib/perl5/site_perl .