2

Я пытаюсь запустить [pisg] [1] на моем Raspberry Pi, который запускает archlinux arm, и каждый раз, когда я пытаюсь запустить его, я получаю:

   Root ~>pisg -cf pisg.conf
   Warning: Couldn't parse -cfg option
   Could not load pisg! Reason:
   Can't locate Pisg.pm in @INC (you may need to install the Pisg module) (@INC contains: /usr/bin/modules/ /usr/lib/perl5/site_perl /usr/share/perl5/site_perl /usr/lib/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib/perl5/core_perl /usr/share/perl5/core_perl .) at (eval 1) line 2.
   BEGIN failed--compilation aborted at (eval 1) line 2.

это можно исправить, скопировав /usr/lib/pisg/modules/Pisg.pm в один из каталогов, перечисленных как включенные в @INC выше. Тогда я получаю

Root ~>pisg -cf pisg.conf
Warning: Couldn't parse -cfg option
Could not load pisg! Reason:
Can't locate Pisg/Common.pm in @INC (you may need to install the Pisg::Common module) (@INC contains: /usr/bin/modules/ /usr/lib/perl5/site_perl /usr/share/perl5/site_perl /usr/lib/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib/perl5/core_perl /usr/share/perl5/core_perl .) at /usr/lib/perl5/site_perl/Pisg.pm line 43.

который / не может быть исправлен путем ссылки Common.pm на вышеуказанные места. Программа отлично работает на моем компьютере archlinux, хотя ..

Редактировать: я скачал pisg из sourceforge, и это, кажется, работает нормально .. (он загружает уже скомпилированные или все, что вы делаете с Perl-программами, и запускается в папке, которую я скачал в ..) Также? Я был неправ, когда сказал, что он запускается, когда я устанавливаю его через AUR на моем компьютере, я просто / забыл / что я скачал его с sourceforge, мой плохой. Пакет в AUR должен быть сломан или что-то.

1 ответ1

1

Все ваши проблемы связаны с отсутствующими модулями Perl, они воспринимаются как эквивалент библиотек C, они являются инструментами, облегчающими выполнение определенных задач. Многие программы используют их, и для их работы необходимо установить определенный модуль.

Модули Perl живут в стране CPAN, Комплексной сети архивов Perl, месте гиков и монахов. Поэтому, когда Perl-программа жалуется на « Can't locate foo/bar.pm in @INC , вам следует перейти на CPAN и найти соответствующий модуль. Это может быть установлено из исходного кода или с помощью одной из множества вспомогательных программ. Подробные инструкции по установке модулей Perl можно найти здесь и в ссылках.

Вкратце, для установки Perl-модуля Pisg::Common (поскольку это тот, который вам не хватает), вы можете сделать любое из:

  • Запустите perl -MCPAN -e 'install Pisg::Common'

  • Установите cpanm, он должен быть упакован для архива, но если нет, это также должно работать (источник):

    cd /opt/
    curl https://raw.github.com/miyagawa/cpanminus/master/cpanm > cpanm
    chmod +x cpanm
    ln -s /opt/cpanm /usr/bin/
    cpanm --self-upgrade --sudo
    

    Затем вы можете установить модули так:

    cpanm Pisg::Common
    

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .