I am trying to build zimbra HELIX-710 for ubuntu server 11.04.
I need to compile perl and I get a really weird error that i dont understand. Everything goes well for the building, but at the verification stage there is an error.
Here the trace.
loic@loicvm:/home/public/p4/HELIX-710/ThirdParty/Perl$ make rm -rf tmp /home/public/p4/HELIX-710/ThirdParty/Perl/zimbramon /home/public/p4/HELIX-710/ThirdPartyBuilds/UBUNTUUNKNOWN_64/perl/perllib.tgz /home/public/p4/HELIX-710/ThirdPartyBuilds/UBUNTUUNKNOWN_64/perl/perlbin.tgz rm -f ThirdParty-Perllibs.log mkdir -p /home/loic/.cpan/CPAN sed -e "s|@@LYNX@@|/usr/bin/lynx|g" -e "s|@@WGET@@|/usr/bin/wget|g" -e "s|@@LESS@@|/usr/bin/less|g" -e "s|@@GPG@@|/usr/bin/gpg|g" -e "s|@@UNZIP@@|/usr/bin/unzip|g" -e "s|@@CURL@@|/usr/bin/curl|g" -e "s|@@BZIP2@@|/bin/bzip2|g" -e "s|@@MAKE@@|/usr/bin/make|g" -e "s|@@FTP@@|/usr/bin/ftp|g" -e "s|@@TAR@@|/bin/tar|g" -e "s|@@GZIP@@|/bin/gzip|g" -e "s|@@BUILD_TYPE@@|INSTALL_BASE|g" -e "s|@@BUILD_ROOT@@|/home/public/p4/HELIX-710/ThirdParty/Perl|g" -e "s|@@CMIRROR@@|http://zre-matrix.eng.vmware.com/cpan/|g" MyConfig.pm.template > /home/loic/.cpan/CPAN/MyConfig.pm mkdir -p /home/public/p4/HELIX-710/ThirdParty/Perl/zimbramon/lib (cd /home/public/p4/HELIX-710/ThirdParty/Perl/zimbramon/lib; ln -s ../lib perl5) mkdir -p /home/public/p4/HELIX-710/ThirdParty/Perl/zimbramon/bin mkdir -p tmp Logging to ThirdParty-Perllibs.log Compiling perl lib Crypt-SSLeay-0.57 ...done. Compiling perl lib Crypt-OpenSSL-Random-0.04 ...done. Compiling perl lib Crypt-OpenSSL-RSA-0.26 ...done. Compiling perl lib Array-Compare-1.17 ...done. Compiling perl lib Tree::DAG_Node ...done. Compiling perl lib Sub::Uplevel ...done. Compiling perl lib Test::Exception ...done. Compiling perl lib Test::Warn ...done. Compiling perl lib Net-SSLeay-1.36 ...done. Compiling perl lib XML-Parser-2.36 ...done. Compiling perl lib IO ...seddone. Compiling perl lib Scalar::Util ...done. Compiling perl lib IO::Socket::SSL ...done. Compiling perl lib Socket6 ...done. Compiling perl lib DBI ...done. Compiling perl lib IO::Zlib ...done. Compiling perl lib Bit::Vector ...done. Compiling perl lib HTML::Tagset ...done. Compiling perl lib HTML::Parser ...done. Compiling perl lib URI ...done. Compiling perl lib Net::HTTP ...done. Compiling perl lib Net::SMTP ...done. Compiling perl lib Proc::ProcessTable ...done. Compiling perl lib HTTP::Parser ...done. Compiling perl lib IO::Stringy ...done. Compiling perl lib E/ER/ERYQ/MIME-Lite-2.117.tar.gz ...done. Compiling perl lib D/DA/DAGOLDEN/Module-Build-0.3607.tar.gz ...done. Compiling perl lib Mail::Mailer ...done. Compiling perl lib Convert::BinHex ...done. Compiling perl lib D/DO/DONEILL/MIME-tools-5.427.tar.gz ...done. Compiling perl lib SOAP::Lite ...done. Compiling perl lib Net::Telnet ...done. Compiling perl lib Config::IniFiles ...done. Compiling perl lib Config::Properties ...done. Compiling perl lib Cache::FastMmap ...done. Compiling perl lib Device::SerialPort ...done. Compiling perl lib Date::Calc ...done. Compiling perl lib S/SB/SBECK/Date-Manip-5.56.tar.gz ...done. Compiling perl lib Date::Parse ...done. Compiling perl lib Time::HiRes ...done. Compiling perl lib Convert::ASN1 ...done. Compiling perl lib Net::LDAP ...done. Compiling perl lib Net::Server ...done. Compiling perl lib Unix::Syslog ...done. Compiling perl lib Parallel::ForkManager ...done. Compiling perl lib Package::Constants ...done. Compiling perl lib IO::Compress::Base ...done. Compiling perl lib IO::Compress::Gzip ...done. Compiling perl lib Compress::Raw::Zlib ...done. Compiling perl lib P/PM/PMQS/Compress-Zlib-1.42.tar.gz ...done. Compiling perl lib Archive::Tar ...done. Compiling perl lib Digest::SHA1 ...done. Compiling perl lib Digest::HMAC ...done. Compiling perl lib Digest::HMAC_MD5 ...done. Compiling perl lib Convert::TNEF ...done. Compiling perl lib Convert::UUlib ...done. Compiling perl lib Net::IP ...done. Compiling perl lib Net::DNS ...done. Compiling perl lib File::Tail ...done. Compiling perl lib File::Temp ...done. Compiling perl lib File::Grep ...done. Compiling perl lib Data::UUID ...done. Compiling perl lib List::Compare ...done. Compiling perl lib Getopt::Easy ...done. Compiling perl lib Crypt::SaltedHash ...done. Compiling perl lib Archive::Zip ...done. Compiling perl lib Digest::SHA ...done. Compiling perl lib Error ...done. Compiling perl lib Ma开发者_StackOverflow中文版il::DKIM ...done. Compiling perl lib K/KH/KHAMPTON/XML-SAX-Base-1.04.tar.gz ...done. Compiling perl lib XML::SAX::Expat ...done. Compiling perl lib XML::Simple ...done. Compiling perl lib IO::Socket::INET6 ...done. Compiling perl lib NetAddr::IP ...done. Compiling perl lib Net::DNS::Resolver::Programmable ...done. Compiling perl lib version ...done. Compiling perl lib Geography::Countries ...done. Compiling perl lib IP::Country ...done. Compiling perl lib DBD::SQLite ...done. Compiling perl lib Net-LDAPapi-3.0.3 ...done. Compiling perl lib BerkeleyDB-0.41 ...done. Compiling perl lib DB_File ...done. Compiling perl lib DBD::mysql ...done. Compiling perl lib Mail-SPF-v2.008 ...done. Compiling perl lib Mail-SpamAssassin-3.3.1 ...done. Compiling perl lib swatch-3.2.3 ...done. Verifying perl module build... /home/public/p4/HELIX-710/ThirdParty/Perl/zmcheckbuiltmodules.pl >> ThirdParty-Perllibs.log 2>&1; make: *** [check] Error 1
And after that if I lunch the zmcheckbuiltmodules.pl manually I dont get any errors.
loic@loicvm:/home/public/p4/HELIX-710/ThirdParty/Perl$ ./zmcheckbuiltmodules.pl /usr/share/perl5/HTTP/Request.pm /usr/share/perl5/LWP/UserAgent.pm
Does some one have some clue ?
I've browsed the log and the situation is clear: the installer is hopelessly broken. It installs Perl modules under a certain prefix /home/public/p4/HELIX-710/ThirdParty/Perl/zimbramon/
, but does not actually add this path to the include path! So Perl cannot find just installed modules. This is such an utterly stupid mistake, it should never made it past QA.
Example: Sub::Uplevel is installed as /home/public/p4/HELIX-710/ThirdParty/Perl/zimbramon/lib/perl5/Sub/Uplevel.pm
, then later the module Test::Exception requires it and fails because the include path only contains the system defaults /etc/perl /usr/local/lib/perl/5.10.1 /usr/local/share/perl/5.10.1 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.10 /usr/share/perl/5.10 /usr/local/lib/site_perl
(smells like Debian) and the temporary CPAN build locations.
Demand a fix for this or your money back; or if that's not an option, give access to the machine to an Perl programmer who has experience with troubleshooting CPAN installations to sweep up the pieces.
精彩评论