Travis CI Install perl module with non

How do you install perl modules on linux and mac platforms on Travis CI when the language is not set to perl? I'm compiling a C program with perl test scripts.

If the language is perl, cpanm is available:

cpanm JSON

Otherwise if the platform is linux:

sudo apt-get install libjson-pp-perl

But when on mac cpanm and apt-get are not available. The mac platform has the brew command available to install programs but I can't figure out if I need to install a fresh version of perl instead of just a module for the system perl version.

The mac version also has the cpan JSON command available, but it hangs to go through an interactive first-run configuration.


Thanks to @simbabque's comment I installed cpanm to the system perl, then used cpanm to install the perl module and it works:

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

I've not yet figured out the easiest way to install locally without using sudo.

Edit: Without requiring sudo, using local::lib to setup $PERL5LIB paths etc.:

# 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
链接地址: http://www.djcxy.com/p/54590.html

上一篇: 如何获取当前用户的临时文件夹

下一篇: Travis CI使用非安装perl模块