首页 文章

安装模块Perl 6失败 - 没有可用于Perl v6.c的编译器

提问于
浏览
6

我通过以下方式安装了Perl 6解释器Rakudo:

sudo apt-get install rakudo

我正在学习有关安装Perl 6模块的教程:

http://perl6maven.com/how-to-install-perl6-modules

在最后一步中我得到了这个错误:

perl6 bootstrap.pl===SORRY!=== Error while compiling /home/daniel/test/panda/bootstrap.pl
No compiler available for Perl v6.c
at /home/daniel/test/panda/bootstrap.pl:3
------> use v6.c⏏;

有关版本的信息:

Ubuntu 16.04.2 LTS
This is perl6 version 2015.11 built on MoarVM version 2015.11

如何安装缺少的编译器?

2 回答

  • 2

    如果您愿意从源代码安装自己的软件,请尝试以下操作(从https://rakudo.perl6.org/downloads/star/更新最新Rakudo Star的URL):

    wget -O rakudo-star-2017.07.tar.gz https://rakudo.perl6.org/downloads/star/rakudo-star-2017.07.tar.gz
    tar -xvf rakudo-star-2017.07.tar.gz
    cd rakudo-star-2017.07
    perl Configure.pl --backend=moar --gen-moar
    make
    make rakudo-test
    make install
    

    然后将以下路径添加到 $PATH (当然,用实际路径替换 /path/to ):

    /path/to/rakudo-star-2017.07/install/bin
    /path/to/rakudo-star-2017.07/install/share/perl6/site/bin
    

    我为此使用了一个模块文件:

    #%Module1.0
    ## Metadata ###########################################
    set this_module   rakudo-star
    set this_version  2017.07
    set this_root     /path/to/$this_module/$this_module-$this_version/install
    set this_docs     http://rakudo.org/documentation/
    
    #######################################################
    ## Module #############################################
    proc ModulesHelp { } {
            global this_module this_version this_root this_docs
            puts stderr "$this_module $this_version"
            puts stderr "****************************************************"
            puts stderr " $this_docs"
            puts stderr "****************************************************\n"
    }
    
    module-whatis   "Set up environment for $this_module $this_version"
    
    prepend-path  PATH  $this_root/bin
    prepend-path  PATH  $this_root/share/perl6/site/bin
    
  • 6

    Warning: This solution can be used for development, but for production it is recommended to manually compile the interpreter until the Ubuntu repository will not be updated.

    折旧链接教程中描述的Panda . 我应该使用zef来安装Perl模块 .

    我的Perl构建太旧了 . 我在阅读issue 380关于不能正常工作的版本 6.c 之后意识到这一点 .

    有关在 Ubuntu 上安装最新Perl, 6.c 的正确教程如下:

    http://linuxtot.com/installing-perl-6-on-debian-or-ubuntu/

    现在我的 rakudo -v 打印:

    This is Rakudo version 2017.07-132-gabf1cfe built on MoarVM version 2017.07-318-g604da4d
    implementing Perl 6.c.
    

    一切都很好 .


    以下命令摘自a tutorial链接如下:

    apt-get install build-essential git libssl-dev
    git clone https://github.com/tadzik/rakudobrew ~/.rakudobrew
    echo 'export PATH=~/.rakudobrew/bin:$PATH' >> ~/.bashrc
    source ~/.bashrc
    rakudobrew build moar
    rakudobrew build zef
    

    现在安装 perl6 模块:

    zef install Module::Name
    

相关问题