如何在C程序中编译Perl代码?

时间:2008-11-04 00:08:16

标签: c perl embedded-language

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

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

谢谢! 马杜

PS:我使用的是Perl-5.8,但是如果知道Perl-6.0是否能够以任何方式使这更容易,那将是一件好事。

3 个答案:

答案 0 :(得分:11)

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

答案 1 :(得分:2)

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

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

答案 2 :(得分:0)

参考Perl 6,它并不完整。但5.10.0可能有一些错误修复超过5.8。