2010-11-20 2 views
1

Я пытаюсь создать исполняемый файл * nix из сценария Perl, который использует модуль CPAN с именем Text :: BibTeX.Проблемы с Perl исполняемым с PP

Я пытался использовать pp, чтобы упаковать все, без успеха.

Я попытался

pp -o outfile src.pl 

pp -M Text::BibTeX -o outfile src.pl 

Но это не работает. Или лучше исполняемый файл работает на моей машине, но не на двух других машинах, к которым я имею доступ. На одной из этих машин Text :: BibTeX также устанавливается на другой только perl.

Может ли кто-нибудь помочь?

Дополнительная информация о скрипте.

Это препроцессор для файлов библиотек для создания файлов CSV из определенных полей нагрудника.

Нормальное использование является:

perl Bib2CSV.pl file.bib 

Когда я бегу pp -x Bib2CSV.pl file.bib жалуется на отсутствие входного файла:

ForkBook:plbib2csv (master) fork$ pp -x Bib2CSV.pl bibliography.bib 
Missing input file. 
SYSTEM ERROR in executing Bib2CSV.pl: 512 at /Library/Perl/5.10.0/Module/ScanDeps.pm line 1255. 

Источник CCODE доступен на https://github.com/TiagoVeloso/Bib2CSV

Он также имеет порт Java что я тоже работаю.

+1

Не должно быть «-M Text :: BibTeX» (не тест)? – bvr

+0

Вы правы, я ошибался, но это не проблема. –

+0

Возможно, вы захотите опубликовать сообщение об ошибке, которое вы получаете либо при создании исполняемого файла, либо при его запуске. В противном случае никто не сможет вам помочь. Жалуется ли он на недостающий модуль или отсутствует .so? – tsee

ответ

0

С pp, у меня всегда был лучший успех с флагом -x (я думаю, это было), который запускает программу и проверяет наличие зависимостей в реальном времени. Посмотрите, поможет ли это.

+0

Это не помогло. Я добавил дополнительную информацию об исходном сообщении. –

-1

Попробуйте использовать $ARGV[0] вместо shift подобрать аргумент командной строки

1

Является bibliography.bib часть PAR, или это вход выполнение этой программы? Если последнее, то вы хотите:

pp -l /usr/lib/libbtparse.so -B -S -o bib2csv bib2csv.pl 
./bib2csv bibliography.bib 

Если первое, то вы хотите:

pp -l /usr/lib/libbtparse.so -B -S -a bibliography.bib -o bib2csv bib2csv.pl 

Более того, в один ряд файл является ZIP-файл. Как и исполняемый файл PAR. Вы можете легко увидеть, что находится внутри par с unzip -t:

unzip -t bib2csv | grep Text 
+0

Я думаю, что это сработало. Я сделаю некоторое тестирование и вернусь к вам. –

+0

К сожалению, это не сработало. : / –

Смежные вопросы