PDF-API2 can not be implemented
After upgrading to Kernel Linux 2.6.37.1-1.2-desktop x86_开发者_JS百科64 with Perl 5, version 12, subversion 3 (v5.12.3) built for x86_64-linux-thread-multi
the module PDF-API2
in the package perl-PDF-API2-0.73-10.1.x86_64.rpm (newest available version in openSuSE 11.4) can no longer be implemented in my perl script "letterbox.pl" by using
"use PDF::API2"
Every time I try the page now, it get's me an ERROR 500. The problem must be with the module, as the error does not reappear if I comment the line 5 "use PDF::API2".
This is the error log:
[Wed Apr 27 16:17:35 2011] [error] [client ::1] Unicode::UCD: failed to find UnicodeData.txt in /usr/lib/perl5/site_perl/5.12.3/x86_64-linux-thread-multi /usr/lib/perl5/site_perl/5.12.3 /usr/lib/perl5/vendor_perl/5.12.3/x86_64-linux-thread-multi /usr/lib/perl5/vendor_perl/5.12.3 /usr/lib/perl5/5.12.3/x86_64-linux-thread-multi /usr/lib/perl5/5.12.3 . at /usr/lib/perl5/vendor_perl/5.12.3/PDF/API2/Resource/Font/BdFont.pm line 45 [Wed Apr 27 16:17:35 2011] [error] [client ::1] Compilation failed in require at /usr/lib/perl5/vendor_perl/5.12.3/PDF/API2/Resource/Font/BdFont.pm line 45.
[Wed Apr 27 16:17:35 2011] [error] [client ::1] BEGIN failed--compilation aborted at /usr/lib/perl5/vendor_perl/5.12.3/PDF/API2/Resource/Font/BdFont.pm line 45.
[Wed Apr 27 16:17:35 2011] [error] [client ::1] Compilation failed in require at /usr/lib/perl5/vendor_perl/5.12.3/PDF/API2.pm line 67.
[Wed Apr 27 16:17:35 2011] [error] [client ::1] BEGIN failed--compilation aborted at /usr/lib/perl5/vendor_perl/5.12.3/PDF/API2.pm line 67.
[Wed Apr 27 16:17:35 2011] [error] [client ::1] Compilation failed in require at /home/hedele/lawsuit/cgi-bin/letterbox.pl line 5.
[Wed Apr 27 16:17:35 2011] [error] [client ::1] BEGIN failed--compilation aborted at /home/hedele/lawsuit/cgi-bin/letterbox.pl line 5.
[Wed Apr 27 16:17:35 2011] [error] [client ::1] Premature end of script headers: letterbox.pl
Any ideas?
The key error is Unicode::UCD: failed to find UnicodeData.txt in ...
. The Unicode::UCD
module is part of the Perl core, and UnicodeData.txt is where it stores some of the data it needs.
UnicodeData.txt should have been installed as part of Perl. Either you deleted it somehow, or you have installed a buggy Perl package, or it got split into some other package you need to install (which makes it a buggy Perl package, because Unicode::UCD shouldn't have been split into a different package than its data files).
This is a packaging bug, as cjm correctly surmised. As a provisional measure until it is fixed, install the package perl-doc
.
精彩评论