1

我正在尝试从使用名为 Text::BibTeX 的 CPAN 模块的 Perl 脚本创建 *nix 可执行文件。

我一直在尝试使用pp,打包所有东西,但没有成功。

我努力了

pp -o outfile src.pl

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

但它不起作用。或者更好的是,可执行文件可以在我的机器上运行,但不能在我可以访问的另外两台机器上运行。在其中一台机器上 Text::BibTeX 也安装在另一台 perl 上。

有人可以帮忙吗?

有关脚本的更多详细信息。

它是 bib 文件的预处理器,以便从 bib 的某些字段创建 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.

源代码可在https://github.com/TiagoVeloso/Bib2CSV

它还有一个我也在研究的 Java 端口。

4

3 回答 3

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

更重要的是,PAR 文件是一个 ZIP 文件。与 PAR 可执行文件一样。您可以使用 unzip -t 轻松查看 par 内的内容:

unzip -t bib2csv | grep Text
于 2010-11-21T05:41:18.183 回答
1

使用 pp,我总是在运行程序并实时检查依赖项的 -x 标志(我认为是)方面取得了最大的成功。看看是否有帮助。

于 2010-11-20T19:07:06.637 回答
-1

尝试使用$ARGV[0]而不是shift拿起命令行参数

于 2010-11-21T02:38:06.473 回答