Εγκατάσταση της Perl τοπικά

Μάθε πώς να εγκαταστήσεις την Perl τοπικά για να λύνεις τις ασκήσεις του Exercism στον υπολογιστή σου


Σημειώσεις για την έκδοση της Perl

Το track στοχεύει στην τελευταία σταθερή έκδοση της Perl. Μπορείς να χρησιμοποιήσεις παλαιότερες εκδόσεις της Perl, αλλά ίσως χρειαστεί να κάνεις προσαρμογές στα αρχεία stub που παρέχονται, για λόγους συμβατότητας. Αν δεν μπορείς να χρησιμοποιήσεις την έκδοση που ορίζεται στα αρχεία stub, συνιστάται να αντικαταστήσεις το use v5.XX; με τον παρακάτω κώδικα:

use strict;
use warnings;
use feature qw<signatures>;

Αν το αρχείο stub περιέχει use experimental qw<class>; και η έκδοση της Perl που χρησιμοποιείς δεν το υποστηρίζει, μπορείς είτε να το αντικαταστήσεις με το use Feature::Compat::Class;, είτε να χρησιμοποιήσεις ένα εναλλακτικό σύστημα αντικειμενοστρέφειας, π.χ. το Moo.

Unix/Linux/Mac OSX

Η Perl είναι πιθανότατα ήδη εγκατεστημένη, ωστόσο μπορεί να μην είναι η τελευταία έκδοση. Τρέξε perl -v για να δεις ποια έκδοση έχεις. Αν θέλεις να χρησιμοποιήσεις νεότερη έκδοση, δες την ενότητα "Άλλες επιλογές".

Αν χρησιμοποιείς Fedora/Red Hat/CentOS, ορισμένα βασικά αρθρώματα δεν περιλαμβάνονται στην Perl. Χρησιμοποίησε την εντολή yum install perl-core για να τα εγκαταστήσεις.

Windows

Strawberry Perl: Μια Perl για Windows, 100% ανοιχτού κώδικα, που είναι ακριβώς ίδια με την Perl οπουδήποτε αλλού. Αυτό περιλαμβάνει τη χρήση αρθρωμάτων από το CPAN, χωρίς να χρειάζονται δυαδικά πακέτα.

Μπορείς είτε να το εγκαταστήσεις απευθείας από τον ιστότοπο, είτε να χρησιμοποιήσεις τον chocolatey package manager.

Άλλες επιλογές

  • asdf: Ένας διαχειριστής εκδόσεων εργαλείων που σου επιτρέπει να εγκαταστήσεις πολλές γλώσσες, ανάμεσά τους και την Perl, η οποία είναι διαθέσιμη ως πρόσθετο της κοινότητας.
  • perlbrew: Ένα εργαλείο για τη διαχείριση πολλών εγκαταστάσεων Perl στον κατάλογο $HOME σου. Είναι εντελώς απομονωμένα σύμπαντα Perl.
  • plenv: Εγκαθιστά εκδόσεις Perl κάτω από τον προσωπικό σου κατάλογο, σου επιτρέπει να εγκαθιστάς αρθρώματα τοπικά και να αλλάζεις σε οποιαδήποτε έκδοση Perl στο shell σου.
  • ActivePerl Community Edition: Μια δωρεάν, έτοιμη προς εγκατάσταση διανομή Perl για Windows, Linux και Mac OS X, σχεδιασμένη για προγραμματιστές της κοινότητας ή έργα ανοιχτού κώδικα που δεν είναι επιχειρηματικά ή ζωτικής σημασίας.

Εγκατάσταση των απαραίτητων αρθρωμάτων

Αν χρησιμοποιείς έκδοση της Perl παλαιότερη από την 5.40, θα χρειαστεί να εγκαταστήσεις τη δέσμη δοκιμών Test2::V0. Θα χρειαστεί επίσης να εγκαταστήσεις είτε το Feature::Compat::Class είτε ένα εναλλακτικό σύστημα αντικειμενοστρέφειας για τις ασκήσεις αντικειμενοστρεφούς προγραμματισμού. Ακολούθησε τις παρακάτω οδηγίες για να το ρυθμίσεις (ή χρησιμοποίησε άφοβα τον αγαπημένο σου εγκαταστάτη αρθρωμάτων, αν γνωρίζεις ήδη Perl):

local::lib

  • Βεβαιώσου ότι το Exercism CLI έχει ήδη εγκατασταθεί και ρυθμιστεί. Τρέχοντας exercism workspace θα πρέπει να δεις τη σωστή διαδρομή.

  • Κατέβασε τον εγκαταστάτη αρθρωμάτων cpm και χρησιμοποίησέ τον για να εγκαταστήσει τον εαυτό του, το local::lib, το Test2::V0 και το Feature::Compat::Class στον κατάλογο exercism/perl5 σου:

# *nix
curl -sL --compressed https://git.io/cpm | \
  perl - install -L $(exercism workspace)/perl5 App::cpm local::lib Test2::V0 Feature::Compat::Class

# Microsoft PowerShell
(Invoke-WebRequest -UseBasicParsing 'https://git.io/cpm').Content |
  perl - install -L "$(exercism workspace)/perl5" App::cpm local::lib Test2::V0 Feature::Compat::Class
  • Τρέξε το local::lib για να ρυθμίσεις το περιβάλλον σου ώστε να χρησιμοποιεί τα αρθρώματα που έχεις εγκαταστήσει στον κατάλογο exercism/perl5:
# *nix
eval $(perl -I$(exercism workspace)/perl5/lib/perl5 -Mlocal::lib=$(exercism workspace)/perl5)

# Microsoft PowerShell
perl -I"$(exercism workspace)/perl5/lib/perl5"
  -M"local::lib=--shelltype=powershell,$(exercism workspace)/perl5" | Invoke-Expression

Οι αλλαγές στο περιβάλλον από την παραπάνω εντολή δεν θα διατηρηθούν και θα χρειαστεί να την ξανατρέξεις αν κάνεις επανεκκίνηση του shell σου. Αν θέλεις το περιβάλλον σου να ρυθμίζεται αυτόματα κάθε φορά, τροποποίησε το .bashrc σου (ή το αντίστοιχό του σε *nix) ή το PowerShell_profile.ps1 σου ώστε να περιλαμβάνει την παραπάνω εντολή.

Η τεκμηρίωση για το local::lib βρίσκεται εδώ.

Πακέτα του λειτουργικού συστήματος

Εναλλακτικά, ο διαχειριστής πακέτων του λειτουργικού σου συστήματος μπορεί να έχει διαθέσιμο προς εγκατάσταση ένα πακέτο Test2 Suite. Οι διαθέσιμες επιλογές περιλαμβάνουν: