Travis CI安装非Perl语言的Perl模块

4
当Travis CI上的语言不是perl时,如何在linux和mac平台上安装perl模块?我正在编译一个带有perl测试脚本的C程序。
如果语言是perl,则可以使用cpanm。
cpanm JSON

否则,如果平台是Linux:
sudo apt-get install libjson-pp-perl

但是,在Mac上,cpanmapt-get都不可用。Mac平台有brew命令可用于安装程序,但我无法确定是否需要安装全新版本的Perl,而不仅仅是系统Perl版本的模块。

Mac版本还提供了cpan JSON命令,但它会在进行交互式首次运行配置时挂起。


请查看 https://metacpan.org/pod/App::cpanminus#Installing-to-system-perl 以安装到系统Perl。 - simbabque
1个回答

4

感谢@simbabque的评论,我将cpanm安装到了系统perl中,然后使用cpanm安装了perl模块,现在它可以正常工作了:

curl -L https://cpanmin.us | sudo perl - --sudo App::cpanminus
sudo cpanm JSON

我还没有找到不使用sudo本地安装的最简单方法。
编辑:可以使用local::lib设置$PERL5LIB路径等,而无需sudo。
# Install modules into ~/perl5 using system perl
curl -L https://cpanmin.us | perl - App::cpanminus
~/perl5/bin/cpanm local::lib
~/perl5/bin/cpanm JSON

# Add path to ~/perl5 modules to ~/.bashrc
echo '[ $SHLVL -eq 1 ] && eval "$(perl -I$HOME/perl5/lib/perl5 -Mlocal::lib)"' >> ~/.bashrc

2
干得好,你也找出了local::lib! :) - simbabque

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接