13

我正在玩基于 Windows 上的 MoarVM 的 perl6 版本。我创建了一些 perl6 文件并希望将其编译为 exe。我尝试了以下方法:

perl6 --target=MAST r.pl>r

现在我想将 r 编译为可执行文件

我发现这个链接讨论了如何使用 Parrot 但我使用的是 MoarVM 目标:http ://perlgeek.de/blog-en/perl-6/my-first-executable.writeback

我的问题如何将 MoarvVM 目标文件编译为 Windows 可执行文件?

4

2 回答 2

3

该语言吸引我的一件事是它应该是可编译的,我想“当然,它会为我构建 exe 文件”,不幸的是,它没有(最后我检查过)。

编译:

perl6 --target=mbc --output=test.moarvm  -e 'say 42'

跑:

perl6 -e 'CompUnit::Loader.load-precompilation-file("test.moarvm".IO)'

但是,您可以在中间 moarvm 机器上编译程序,但请记住,这是不可移植的,因此您必须在每个目标上重新编译。

我认为这段代码是由 irc 频道上真正了解 perl6 的人传给我的,不过我不明白它是如何工作的。

我建议您是否需要一种编译语言,等待编译器人员的真正支持,或者只是使用 rust 或 golang 之类的东西(这就是我最终使用的,我很高兴)。

我知道 rust 没有 Perl6 所拥有的所有“花里胡哨”,但它完成了工作......

于 2017-11-21T16:58:58.570 回答
3

不幸的是,答案是针对 JVM 和将 JAR 转换为可执行文件的众多好工具之一。MoarVM 在这一点上没有那个工具(并且鉴于当前 perl6 黑客和 Windows 用户之间缺乏重叠,可能在一段时间内不会)。

于 2016-10-13T22:20:18.550 回答