[ Skip to the content ]

Institute of Formal and Applied Linguistics Wiki


[ Back to the navigation ]

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revision Both sides next revision
perlbrew [2014/05/21 01:27]
popel
perlbrew [2014/05/28 11:14]
popel
Line 11: Line 11:
   eval "$(bash-complete setup)"   eval "$(bash-complete setup)"
  
-The second line is optional, but it enables [[https://metacpan.org/pod/Bash::Completion|Bash Completion]] for [[http://perlbrew.pl/|perlbrew]], [[https://metacpan.org/pod/App::cpanminus|cpanm]] and treex.+The second line is optional, but it enables [[https://metacpan.org/pod/Bash::Completion|Bash Completion]] for [[http://perlbrew.pl/|perlbrew]], [[https://metacpan.org/pod/App::cpanminus|cpanm]] and treex (if the respective ''Bash::Completion::Plugins::XY'' modules are installed). 
 +Make sure you have deleted (commented out) the old setup_platform setup (''source /net/work/projects/perl_repo/admin/bin/setup_platform'') from your ''~/.bashrc''
 + 
 +Also note that perlbrew (unlike ''setup_platform'') does not change your ''$PERL5LIB''. You probably add some local Perl modules to ''$PERL5LIB'' in your ''.bashrc'' (e.g. ''export PERL5LIB="/home/popel/tmt/treex/lib:$PERL5LIB"''). When you source ''.bashrc'' again, make sure you don't have duplicate paths in ''$PERL5LIB'' (e.g. ''"/home/popel/tmt/treex/lib:/home/popel/tmt/treex/lib"'') -- to prevent this add this line to the //beginning// of your ''.bashrc'': 
 + 
 +  export PERL5LIB="" 
  
 ===== How to use Perlbrew ===== ===== How to use Perlbrew =====
   perlbrew list               # Which perl versions are installed?   perlbrew list               # Which perl versions are installed?
-  perlbrew use perl-5.16.   # use one of these perls for the current shell +  perlbrew use perl-5.18.   # use one of these perls for the current shell 
-  perlbrew switch perl-5.16.# use this perl version permanently+  perlbrew switch perl-5.18.# use this perl version permanently 
 +  perlbrew off                # return to the system installation of perl 
 + 
 +You can read [[https://metacpan.org/pod/distribution/App-perlbrew/bin/perlbrew|the full Perlbrew documentation]] (but it should not be needed). 
 +Note that there is a separate Perlbrew environment for each architecture (32bit vs. 64bit machines) at ÚFAL, so if you switch to perl-5.18.2 on 32bit machines, you need to do it again on 64bit machines if you want to use perl-5.18.2 on both.
  
 ===== How to install missing modules from CPAN ===== ===== How to install missing modules from CPAN =====
Line 33: Line 43:
  
 Useful switch for ''cpanm'' is ''-n'' (notest, useful e.g. for ''cpanm -n Tk''). See ''cpanm -h'' for more (e.g. installing from github, installing to your own local-lib). Useful switch for ''cpanm'' is ''-n'' (notest, useful e.g. for ''cpanm -n Tk''). See ''cpanm -h'' for more (e.g. installing from github, installing to your own local-lib).
-You can install the modules also manually (''perl Build.PL && ./Build && ./Build test && ./Build install''). There is no need to set ''--prefix'' nor ''--install_base'', because you (everyone group ufal) have write access to the shared ÚFAL perlbrew repository.+You can install the modules also manually (''perl Build.PL && ./Build && ./Build test && ./Build install''). There is no need to set ''prefix'' nor ''install_base'', because you (everyone from the group ''ufal'') have write access to the shared ÚFAL perlbrew repository.
  
 ===== How to install new Perl version ===== ===== How to install new Perl version =====
Line 39: Line 49:
   perlbrew available                    # list perl versions available for download   perlbrew available                    # list perl versions available for download
   perlbrew install perl-5.16.3          # install this older version   perlbrew install perl-5.16.3          # install this older version
-  perlbrew install -Dcc=gcc perl-5.16.# on Ubuntu10.04 64bit, I had to use this switch+  perlbrew install -Dcc=gcc --thread --multi -j 4 perl-5.20.# on Ubuntu10.04 64bit, I had to use -Dcc=gcc 
 +   
 +(Note that when trying to compile threaded perl on cluster machines I had to ignore [[http://www.nntp.perl.org/group/perl.perl5.porters/2014/05/msg214911.html|this]] error.)
  
 Now, we probably want to install all modules from the current perl to the new perl: Now, we probably want to install all modules from the current perl to the new perl:
Line 45: Line 57:
   perlbrew list-modules > list.txt   perlbrew list-modules > list.txt
   perlbrew switch perl-5.16.3   perlbrew switch perl-5.16.3
 +  cpanm -n Tk # Tk tests are long and pop up many windows
 +  cpanm -n UNIVERSAL::DOES PerlIO::Util # these modules have (reported) errors, but we need them as dependencies
   cpanm < list.txt   cpanm < list.txt
  
 +==== Tricky modules ====
 +
 +=== Algorithm::SVM ===
 +In ''bindings.h'' after #include <assert.h> [[https://rt.cpan.org/Ticket/Display.html?id=43669|add these two lines]]:
 +
 +  #include <cstdlib>
 +  #include <string.h>
 +
 +=== Algorithm::FuzzyCmeans ===
 +[[https://rt.cpan.org/Ticket/Display.html?id=76248|Delete]] ''use_test_base;'' from ''Makefile.PL''.

[ Back to the navigation ] [ Back to the content ]