首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >什么是nqp,nqp-m,rakudo-gdb m,rakudo-调试-m,rakudo-gdb-m,rakudo,rakudo-val差-m?

什么是nqp,nqp-m,rakudo-gdb m,rakudo-调试-m,rakudo-gdb-m,rakudo,rakudo-val差-m?
EN

Stack Overflow用户
提问于 2021-04-18 13:05:34
回答 1查看 167关注 0票数 4

当我从源代码安装拉古多时:

代码语言:javascript
复制
$ git clone git@github.com:rakudo/rakudo.git
$ cd rakudo
$ perl Configure.pl --gen-moar --gen-nqp --backends=moar
$ make
$ make install

它在./install/bin中生成以下文件

代码语言:javascript
复制
$ ls -1 install/bin
moar
nqp
nqp-m
perl6
perl6-debug
perl6-debug-m
perl6-gdb-m
perl6-lldb-m
perl6-m
perl6-valgrind-m
raku
raku-debug
rakudo
rakudo-debug
rakudo-debug-m
rakudo-gdb-m
rakudo-lldb-m
rakudo-m
rakudo-valgrind-m

我知道rakurakudoperl6是用来运行.raku脚本的命令,但是其他命令是什么,我如何使用它们呢?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-04-18 16:34:42

  • moar是vm (没有字节码文件就不太有用)
  • nqp用于NQP (不完全是Perl6)。这是Raku的一个小子集,它更快/更容易优化。(例如,没有类似的=操作) 它是Rakudo的引导编译器。

对于rakudo-m这样的其他人

  • *-m在MoarVM上的意思
  • *-j的意思是在JVM上(不在这里安装)
  • *-js的意思是在JavaScript上(这里没有安装)

  • *-debug的意思是,使用版本和调试信息。
  • *-gdb意味着使用GNU信息的版本
  • *-lldb意味着使用带有LLDB调试信息的版本。
  • *-valgrind的意思是使用memory插装框架(查找内存泄漏)

因此,rakudo-valgrind-m的意思是使用Rakudo编译器,并在MoarVM上使用工具。

我只会使用rakudo-mrakudo-jrakudo-js,而这只是在我安装了MoarVM版本之外的情况下才会使用。

剩下的主要是为Rakudo/NQP/MoarVM项目本身工作的人员准备的。

票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67148894

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档