Я попытался обезжирить свой скрипт Perl с помощью утилиты fatpack из модуля App :: Fatpacker (на CentOS 6.6 с 64-битным запуском Perl 5.20). Мой скрипт использует Log :: Log4perl модуль для ведения журнала. fatpack утилита жалуется на модуле регистрации:Можно ли использовать скрипт с помощью Log :: Log4perl с помощью App :: Fatpacker?
fatpack trace collect_genomes_to_database.pl
collect_genomes_to_database.pl syntax OK
fatpack packlists-for `cat fatpacker.trace` >packlists
Can't locate object method "new" via package "Log::Log4perl::Appender" at ~/perl5/lib/perl5/Log/Log4perl/Logger.pm line 33.
Compilation failed in require at ~/perl5/lib/perl5/Log/Log4perl/Config.pm line 8.
BEGIN failed--compilation aborted at ~/perl5/lib/perl5/Log/Log4perl/Config.pm line 8.
Compilation failed in require at ~/perl5/lib/perl5/Log/Log4perl/Appender.pm line 9.
BEGIN failed--compilation aborted at ~/perl5/lib/perl5/Log/Log4perl/Appender.pm line 9.
Compilation failed in require at ~/perl5/lib/perl5/App/FatPacker.pm line 149.
BEGIN failed--compilation aborted at ~/perl5/bin/fatpack line 3.
ли кто-то успеха упаковки скрипта, содержащий Log :: Log4perl или не выполнима?
Можете ли вы предложить другой метод создания самосогласованного скрипта?
Звучит как 'Log :: Log4perl :: Appender 'загружается во время выполнения через' require' или аналогичный; заставляя толстяка не видеть его, а не обезжирить его. Попробуйте добавить явный 'use Log :: Log4perl :: Appender'' и снова перетяните все это, посмотрите, поможет ли это. – Mithaldu
Поздравляем, вы обнаружили ошибку: https://github.com/mschilli/log4perl/issues/59 – Mithaldu