Oddities with DBIx::SearchBuilder dep check

I seemed to have everything I needed:

[root@hewes rt-2-0-0]# make testdeps
/usr/bin/perl ./tools/testdeps -warn mysql
Checking for DBI 1.16 …found
Checking for DBIx::DataSource 0.02 …found
Checking for DBIx::SearchBuilder 0.39 …found
Checking for HTML::Entities…found
Checking for MLDBM…found
Checking for Net::Domain…found
Checking for Net::SMTP…found
Checking for Params::Validate 0.02 …found
Checking for HTML::Mason 0.896 …found
Checking for CGI::Cookie 1.06 …found
Checking for Apache::Session 1.53 …found
Checking for Date::Parse…found
Checking for Date::Format…found
Checking for MIME::Entity 5.108 …found
Checking for Mail::Mailer 1.20 …found
Checking for Getopt::Long 2.24 …found
Checking for Tie::IxHash…found
Checking for Text::Wrapper…found
Checking for Text::Template…found
Checking for File::Spec 0.8 …found
Checking for Errno…found
Checking for File::Temp…found
Checking for Log::Dispatch 1.6 …found
Checking for DBD::mysql 2.0416 …found

And yet:

[snip]
chmod 000 /usr/local/rt2/etc/config.pm.old
make: [config-replace] Error 1 (ignored)
cp -rp ./etc/config.pm /usr/local/rt2/etc/config.pm
/usr/bin/perl -p -i -e "
s’!!DB_TYPE!!‘mysql’g;
s’!!DB_HOST!!‘localhost’g;
s’!!DB_RT_PASS!!‘balliol’g;
s’!!DB_RT_USER!!‘rt2’g;
s’!!DB_DATABASE!!‘rt2’g;
s’!!MASON_HTML_PATH!!‘/usr/local/rt2/WebRT/html’g;
s’!!MASON_LOCAL_HTML_PATH!!‘/usr/local/rt2/local/WebRT/html’g;
s’!!MASON_SESSION_PATH!!‘/usr/local/rt2/WebRT/sessiondata’g;
s’!!MASON_DATA_PATH!!‘/usr/local/rt2/WebRT/data’g;
s’!!RT_LOG_PATH!!‘/tmp’g;
s’!!RT_VERSION!!‘2.0.0’g;
" /usr/local/rt2/etc/config.pm
[ -d /usr/local/rt2/lib ] || mkdir /usr/local/rt2/lib
chown -R root /usr/local/rt2/lib
chgrp -R bin /usr/local/rt2/lib
chmod -R 0755 /usr/local/rt2/lib
( cd ./lib;
/usr/bin/perl Makefile.PL INSTALLSITELIB=/usr/local/rt2/lib
INSTALLSITEMAN1DIR=/usr/local/rt2/man/man1
INSTALLSITEMAN3DIR=/usr/local/rt2/man/man3
&& make
&& make test
&& /usr/bin/perl -p -i -e " s’!!RT_VERSION!!'2.0.0’g;" blib/lib/RT.pm ;
make install
)
Warning: prerequisite DBIx::SearchBuilder 0.39 not found at /usr/lib/perl5/5.6.0/ExtUtils/MakeMaker.pm line 349.

YIKES*

and then later:

make[1]: Leaving directory /hdb1/darren/rt-2-0-0/lib' make[1]: Entering directory /hdb1/darren/rt-2-0-0/lib’
PERL_DL_NONLAZY=1 /usr/bin/perl -Iblib/arch -Iblib/lib -I/usr/lib/perl5/5.6.0/i386-linux -I/usr/lib/perl5/5.6.0 test.pl
1…1
Can’t locate DBIx/SearchBuilder/Record/Cachable.pm in @INC (@INC contains: blib/arch blib/lib /usr/lib/perl5/5.6.0/i386-linux /usr/lib/perl5/5.6.0/i386-linux /usr/lib/perl5/5.6.0 /usr/lib/perl5/5.6.0/i386-linux /usr/lib/perl5/5.6.0 /usr/lib/perl5/site_perl/5.6.0/i386-linux /usr/lib/perl5/site_perl/5.6.0 /usr/lib/perl5/site_perl .) at blib/lib/RT/Record.pm line 19.
BEGIN failed–compilation aborted at blib/lib/RT/Record.pm line 19.
Compilation failed in require at blib/lib/RT/CurrentUser.pm line 23.
BEGIN failed–compilation aborted at blib/lib/RT/CurrentUser.pm line 23.
Compilation failed in require at blib/lib/RT.pm line 3.
BEGIN failed–compilation aborted at blib/lib/RT.pm line 3.
Compilation failed in require at test.pl line 11.
BEGIN failed–compilation aborted at test.pl line 11.
make[1]: *** [test_dynamic] Error 2
make[1]: Leaving directory /hdb1/darren/rt-2-0-0/lib' make[1]: Entering directory /hdb1/darren/rt-2-0-0/lib’
Installing /usr/local/rt2/lib/RT.pm
Installing /usr/local/rt2/lib/RT/KeywordSelects.pm
Installing /usr/local/rt2/lib/RT/Links.pm
Installing /usr/local/rt2/lib/RT/Watchers.pm
Installing /usr/local/rt2/lib/RT/Group.pm

UGH

What I find odd is that:

cpan> install DBIx::SearchBuilder
DBIx::SearchBuilder is up to date.

Which is clearly a lie, because looking at what’s available:

cpan> i /SearchBuilder/
Distribution J/JE/JESSE/DBIx-SearchBuilder-0.13.tar.gz
Distribution J/JE/JESSE/DBIx-SearchBuilder-0.15.tar.gz
Distribution J/JE/JESSE/DBIx-SearchBuilder-0.39.tar.gz
Module DBIx::SearchBuilder (J/JE/JESSE/DBIx-SearchBuilder-0.39.tar.gz)
Module DBIx::SearchBuilder::Handle (J/JE/JESSE/DBIx-SearchBuilder-0.13.tar.gz)
Module DBIx::SearchBuilder::Handle::Oracle (J/JE/JESSE/DBIx-SearchBuilder-0.39.tar.gz)
Module DBIx::SearchBuilder::Handle::Pg (J/JE/JESSE/DBIx-SearchBuilder-0.39.tar.gz)
Module DBIx::SearchBuilder::Handle::mysql (J/JE/JESSE/DBIx-SearchBuilder-0.39.tar.gz)
Module DBIx::SearchBuilder::Record (J/JE/JESSE/DBIx-SearchBuilder-0.15.tar.gz)
9 items found

I was able to

cpan> install J/JE/JESSE/DBIx-SearchBuilder-0.39.tar.gz

and it did:

cpan> install J/JE/JESSE/DBIx-SearchBuilder-0.39.tar.gz
Running make for J/JE/JESSE/DBIx-SearchBuilder-0.39.tar.gz
CPAN: LWP::UserAgent loaded ok
Fetching with LWP:
ftp://ftp.uky.edu/CPAN/authors/id/J/JE/JESSE/DBIx-SearchBuilder-0.39.tar.gz
Scanning cache /root/.cpan/build for sizes
Deleting from cache: /root/.cpan/build/Time-HiRes-01.20 (11.5>10.0 MB)
Deleting from cache: /root/.cpan/build/MLDBM-2.00 (11.4>10.0 MB)
Deleting from cache: /root/.cpan/build/DBIx-DBSchema-0.13 (11.2>10.0 MB)
Deleting from cache: /root/.cpan/build/HTML-Mason-0.89 (11.0>10.0 MB)
CPAN: MD5 loaded ok
Fetching with LWP:
ftp://ftp.uky.edu/CPAN/authors/id/J/JE/JESSE/CHECKSUMS
CPAN: Compress::Zlib loaded ok
Checksum for /root/.cpan/sources/authors/id/J/JE/JESSE/DBIx-SearchBuilder-0.39.tar.gz ok
DBIx-SearchBuilder-0.39/
DBIx-SearchBuilder-0.39/Changes
DBIx-SearchBuilder-0.39/MANIFEST
DBIx-SearchBuilder-0.39/MANIFEST.SKIP
DBIx-SearchBuilder-0.39/Makefile.PL
DBIx-SearchBuilder-0.39/SearchBuilder.pm
DBIx-SearchBuilder-0.39/test.pl
DBIx-SearchBuilder-0.39/SearchBuilder/
DBIx-SearchBuilder-0.39/SearchBuilder/Handle.pm
DBIx-SearchBuilder-0.39/SearchBuilder/Record.pm
DBIx-SearchBuilder-0.39/SearchBuilder/Handle/
DBIx-SearchBuilder-0.39/SearchBuilder/Handle/Oracle.pm
DBIx-SearchBuilder-0.39/SearchBuilder/Handle/Pg.pm
DBIx-SearchBuilder-0.39/SearchBuilder/Handle/mysql.pm
DBIx-SearchBuilder-0.39/SearchBuilder/Record/
DBIx-SearchBuilder-0.39/SearchBuilder/Record/Cachable.pm

CPAN.pm: Going to build J/JE/JESSE/DBIx-SearchBuilder-0.39.tar.gz

Checking if your kit is complete…
Looks good
Writing Makefile for DBIx::SearchBuilder
mkdir blib
mkdir blib/lib
mkdir blib/lib/DBIx
mkdir blib/arch
mkdir blib/arch/auto
mkdir blib/arch/auto/DBIx
mkdir blib/arch/auto/DBIx/SearchBuilder
mkdir blib/lib/auto
mkdir blib/lib/auto/DBIx
mkdir blib/lib/auto/DBIx/SearchBuilder
mkdir blib/man3
cp SearchBuilder/Handle/Pg.pm blib/lib/DBIx/SearchBuilder/Handle/Pg.pm
cp SearchBuilder/Handle.pm blib/lib/DBIx/SearchBuilder/Handle.pm
cp SearchBuilder/Handle/mysql.pm blib/lib/DBIx/SearchBuilder/Handle/mysql.pm
cp SearchBuilder.pm blib/lib/DBIx/SearchBuilder.pm
cp SearchBuilder/Record.pm blib/lib/DBIx/SearchBuilder/Record.pm
cp SearchBuilder/Handle/Oracle.pm blib/lib/DBIx/SearchBuilder/Handle/Oracle.pm
cp SearchBuilder/Record/Cachable.pm blib/lib/DBIx/SearchBuilder/Record/Cachable.pm
Manifying blib/man3/DBIx::SearchBuilder::Handle.3pm
Manifying blib/man3/DBIx::SearchBuilder::Handle::mysql.3pm
Manifying blib/man3/DBIx::SearchBuilder.3pm
Manifying blib/man3/DBIx::SearchBuilder::Record.3pm
Manifying blib/man3/DBIx::SearchBuilder::Handle::Oracle.3pm
/usr/bin/make – OK
Running make test
PERL_DL_NONLAZY=1 /usr/bin/perl -Iblib/arch -Iblib/lib -I/usr/lib/perl5/5.6.0/i386-linux -I/usr/lib/perl5/5.6.0 test.pl
1…6
ok 1
ok 2
ok 3
ok 4
ok 5
ok 6
/usr/bin/make test – OK
Running make install
Installing /usr/lib/perl5/site_perl/5.6.0/DBIx/SearchBuilder.pm
Installing /usr/lib/perl5/site_perl/5.6.0/DBIx/SearchBuilder/Handle.pm
Installing /usr/lib/perl5/site_perl/5.6.0/DBIx/SearchBuilder/Record.pm
Installing /usr/lib/perl5/site_perl/5.6.0/DBIx/SearchBuilder/Record/Cachable.pm
Installing /usr/lib/perl5/site_perl/5.6.0/DBIx/SearchBuilder/Handle/Pg.pm
Installing /usr/lib/perl5/site_perl/5.6.0/DBIx/SearchBuilder/Handle/mysql.pm
Installing /usr/lib/perl5/site_perl/5.6.0/DBIx/SearchBuilder/Handle/Oracle.pm
Installing /usr/share/man/man3/DBIx::SearchBuilder::Handle.3pm
Installing /usr/share/man/man3/DBIx::SearchBuilder::Handle::mysql.3pm
Installing /usr/share/man/man3/DBIx::SearchBuilder.3pm
Installing /usr/share/man/man3/DBIx::SearchBuilder::Record.3pm
Installing /usr/share/man/man3/DBIx::SearchBuilder::Handle::Oracle.3pm
Writing /usr/lib/perl5/site_perl/5.6.0/i386-linux/auto/DBIx/SearchBuilder/.packlist
Appending installation info to /usr/lib/perl5/5.6.0/i386-linux/perllocal.pod
/usr/bin/make install – OK

This time through the make install was happy (well aside from my having had to
mess with MySQL grants by hand . . . )

I’m posting this in case it’s not just something weird with my CPAN/perl
setup.

-d