【问题标题】:How do I compile Perl code within a C program?如何在 C 程序中编译 Perl 代码?
【发布时间】:2008-11-04 00:08:16
【问题描述】:

我有一个带有嵌入式 Perl 解释器的 C 程序。我希望能够从程序中预编译一些 Perl 代码。我该怎么做?

基本原理(如果有人感兴趣的话)是能够编译一次,存储解析树,并执行多次(只要编译后的代码不变)。

谢谢! 马杜

PS:我正在使用 Perl-5.8,不过如果 Perl-6.0 以任何方式让这件事变得更容易,我会很高兴。

【问题讨论】:

  • wrt 你的理由,你嵌入 Perl 只是为了存储解析树,从而减少启动时间?还是 C 程序做其他事情?如果只是为了启动时间,还有其他方法可以做到这一点。

标签: c perl embedded-language


【解决方案1】:

这是您embed the Perl interpreter in a C program 时的默认行为。在你运行 perl_parse() 来解析 Perl 程序之后,你可以反复使用 perl_run() 和 call_argv() 来解析同一个 Perl 程序。

【讨论】:

    【解决方案2】:

    您可以使用perlcc 创建可执行文件或 C 源代码。

    要编译您的 C 代码,您需要使用 perl 的库(可以是 -lperl-llibperl)。

    【讨论】:

    【解决方案3】:

    关于 Perl 6,它并不完整。但是 5.10.0 可能会比 5.8 修复一些错误。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-08-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多