Πώς να εγκαταστήσετε λογισμικό χρησιμοποιώντας το Git σε Linux

Σας έχουν πει να «κλωνοποιήσετε το repo και να το φτιάξετε» και δεν ξέρετε τι να κάνετε στη συνέχεια; Θα σας δείξουμε πώς να εκτελείτε αυτό το πρόγραμμα στο GitHub σε Linux, ακόμα κι αν είστε αρχάριος.

Οι οδηγίες που συνθέτουν ένα πρόγραμμα υπολογιστή γράφονται, επεξεργάζονται και αποθηκεύονται σε αρχεία κειμένου. Στη συνέχεια, ένα πρόγραμμα που ονομάζεται μεταγλωττιστής επεξεργάζεται αυτά τα αρχεία. Αυτό παράγει την εκτελέσιμη έκδοση του προγράμματος. Τα αρχεία κειμένου των οδηγιών ονομάζονται πηγαίος κώδικας. Η έκδοση του προγράμματος που μπορεί πραγματικά να εκτελεστεί σε έναν υπολογιστή ονομάζεται δυαδικό ή εκτελέσιμο.

Αυτή είναι μια απλοποιημένη εκδοχή των γεγονότων, αλλά δίνει μια σωστή —αν γενικευμένη— εικόνα. Στην πράξη, θα βρείτε κάθε είδους παραλλαγές σε αυτό το μοντέλο. Μερικές φορές, άλλα προγράμματα δημιουργούν τα αρχεία κειμένου. Άλλες φορές, ο πηγαίος κώδικας εκτελείται μέσα σε διερμηνέα και δεν χρειάζεται να μεταγλωττιστεί και ούτω καθεξής.

Ωστόσο, η μόνη παγκόσμια αλήθεια σε όλα τα έργα λογισμικού είναι η εξής: τα αρχεία πηγαίου κώδικα είναι τα κοσμήματα του στέμματος, και πρέπει να φροντίζονται εξίσου προσεκτικά.

Προγράμματα ελέγχου έκδοσης

Όλα τα αρχεία πηγαίου κώδικα σε ένα έργο ονομάζονται βάση κώδικα. Τα μεγάλα έργα συχνά έχουν πολλούς προγραμματιστές που εργάζονται στη βάση κώδικα. Κάθε αλλαγή κώδικα πρέπει να παρακολουθείται και να αναγνωρίζεται. Εάν απαιτείται, οι αλλαγές πρέπει να είναι αναστρέψιμες. Εάν διαφορετικοί προγραμματιστές κάνουν αλλαγές στο ίδιο αρχείο πηγαίου κώδικα, οι επεξεργασίες τους πρέπει να συγχωνευθούν.

Δεν προκαλεί έκπληξη, λοιπόν, ότι υπάρχουν προγράμματα λογισμικού που ονομάζονται συστήματα ελέγχου έκδοσης για να διευκολύνουν τη διαχείριση των αλλαγών στη βάση κώδικα. Τα συστήματα ελέγχου έκδοσης διατηρούν όλες τις προηγούμενες εκδόσεις κάθε αρχείου στη βάση κώδικα και κάθε αλλαγή καταγράφεται, σχολιάζεται και παρακολουθείται.

Ένα μικρό πράγμα που ονομάζεται Git

Linus Torvalds, ο δημιουργός του πυρήνα του Linux, ανέπτυξε ένα πρόγραμμα ελέγχου έκδοσης που ονομάζεται Git για τη διαχείριση της βάσης κώδικα του πυρήνα του Linux. Είναι πλέον το πιο ευρέως διαδεδομένο λογισμικό ελέγχου εκδόσεων στον κόσμο. Υπάρχουν εκατομμύρια άνθρωποι που το χρησιμοποιούν—κυριολεκτικά.

Με το Git, η βάση κώδικα ενός έργου αποθηκεύεται σε αποθετήρια. Εκτός από τα τοπικά αποθετήρια που βρίσκονται στους υπολογιστές του προγραμματιστή και, ίσως, σε έναν κεντρικό διακομιστή στο δίκτυο, είναι καλή πρακτική να έχετε ένα αποθετήριο εκτός τοποθεσίας ή απομακρυσμένο.

Και εκεί έρχεται το GitHub.

GitHub

GitHub δημιουργήθηκε ως αποτέλεσμα της επιτυχίας του git. Οι ιδρυτές είδαν την αναδυόμενη ανάγκη για ασφαλή φιλοξενούμενα απομακρυσμένα αποθετήρια git. Ξεκίνησαν μια επιχείρηση παρέχοντας μια πλατφόρμα cloud για να επιτρέπεται στις ομάδες ανάπτυξης να φιλοξενούν απομακρυσμένα αποθετήρια. Από τον Απρίλιο του 2019, το GitHub φιλοξενεί πάνω από 100 εκατομμύρια αποθετήρια.

  Οι 6 καλύτεροι επεξεργαστές Markdown για Linux

Εάν μια εφαρμογή είναι έργο ανοιχτού κώδικα, οι πιθανότητες να φιλοξενηθεί στο GitHub είναι πολύ μεγάλες. Υπάρχουν διαθέσιμες άλλες πλατφόρμες αποθήκευσης, όπως π.χ BitBucket και GitLab, αλλά το GitHub έχει τη μερίδα του λέοντος στα αποθετήρια ανοιχτού κώδικα.

Ανατομία ενός αποθετηρίου

Ένα αποθετήριο GitHub αποτελείται από φακέλους που περιέχουν αρχεία όπως τα πολύ σημαντικά αρχεία πηγαίου κώδικα. Συνήθως, υπάρχουν πολλοί άλλοι τύποι αρχείων στο αποθετήριο. Μπορεί να υπάρχουν αρχεία τεκμηρίωσης, σελίδες man, αρχεία άδειας χρήσης λογισμικού, οδηγίες κατασκευής και αρχεία σεναρίων κελύφους. Δεν υπάρχουν κανόνες σχετικά με το τι πρέπει ή πρέπει να περιέχει ένα αποθετήριο, αλλά υπάρχουν συμβάσεις.

Εάν ξέρετε τον τρόπο που περπατάτε σε μια κουζίνα, μπορείτε να περιηγηθείτε σε οποιαδήποτε κουζίνα. Το ίδιο συμβαίνει και με τα αποθετήρια. Μόλις κατανοήσετε τις συμβάσεις, ξέρετε πού να πάτε για να βρείτε αυτό που χρειάζεστε.

Λοιπόν, πώς λαμβάνετε ένα αντίγραφο του αποθετηρίου στον υπολογιστή σας και πώς δημιουργείτε το πρόγραμμα σε ένα δυαδικό εκτελέσιμο αρχείο;

Το αρχείο readme

Είναι παραδοσιακό να συμπεριλαμβάνεται ένα αρχείο readme σε ένα αποθετήριο. Μπορεί να ονομάζεται readme, Readme ή README. Μπορεί να έχει επέκταση “.md” ή καθόλου επέκταση.

Ας ρίξουμε μια ματιά στο GitHub αποθετήριο για τον επεξεργαστή Atom. Βλέπετε μια μεγάλη λίστα φακέλων και αρχείων. Κάντε κύλιση προς τα κάτω και θα δείτε τα περιεχόμενα του αρχείου README.md.

Το GitHub τοποθετεί αυτόματα τα περιεχόμενα του αρχείου readme στην πρώτη σελίδα του αποθετηρίου. Εάν το αρχείο readme έχει επέκταση “.md”, θα περιέχει Σήμανση Markdown Γλώσσα. Αυτό επιτρέπει στους προγραμματιστές να χρησιμοποιούν στοιχεία στυλ, όπως γραμματοσειρές, κουκκίδες και εικόνες.

Συνήθως, ένα αρχείο readme έχει ενότητες που σας ενημερώνουν σχετικά με το έργο, ποια είναι η άδεια τύπου, ποιος διατηρεί το έργο, πώς να συμμετάσχετε και πώς να δημιουργήσετε και να εκτελέσετε την εφαρμογή.

Εάν δεν παραθέτει τις πραγματικές οδηγίες κατασκευής, θα σας πει πού μπορείτε να βρείτε αυτές τις πληροφορίες. Άλλες πληροφορίες χρήσιμες για τη δημιουργία της εφαρμογής, όπως τα απαιτούμενα εργαλεία κατασκευής και άλλες εξαρτήσεις, ενδέχεται να παρατίθενται εδώ ή ένας σύνδεσμος μπορεί να σας οδηγήσει σε αυτές τις πληροφορίες.

Τα κουτιά Αποθετήριο

Η αποστολή μας είναι να κλωνοποιήστε το αποθετήριο κουτιώνκαι, στη συνέχεια, δημιουργήστε την εφαρμογή κουτιών.

Το αποθετήριο ακολουθεί την ίδια διάταξη με το Atom. Υπάρχει μια λίστα με φακέλους και αρχεία και παρακάτω είναι τα περιεχόμενα του αρχείου readme. Ακολουθεί την τυπική διάταξη για ένα αποθετήριο, αλλά είναι ένα μικρότερο έργο, επομένως υπάρχουν λιγότεροι φάκελοι και αρχεία.

Το αρχείο readme είναι επίσης πιο σύντομο. Έχει μια ενότητα που ονομάζεται “Ανάπτυξη”. Σε αυτήν την ενότητα υπάρχει ένας σύνδεσμος με τίτλο “οικοδόμηση από την πηγή”. Αν ακολουθήσουμε αυτόν τον σύνδεσμο, πρέπει να βρούμε τις πληροφορίες χρειαζόμαστε.

Συνήθως απαιτείται κάποιο ελαφρύ sleuthing για να περιηγηθείτε στο αποθετήριο και να βρείτε τις πληροφορίες που θέλετε, αλλά δεν είναι δύσκολο. Διαβάστε προσεκτικά τα πάντα στη σελίδα αποθετηρίου. Μερικές φορές, οι πληροφορίες υπάρχουν αλλά ενδέχεται να μην εμφανίζονται ευδιάκριτα.

Οι Εξαρτήσεις

Η σελίδα “Δημιουργία από την πηγή” έχει μια ενότητα που ονομάζεται “Δημιουργία σε Linux” και αυτό ακριβώς χρειαζόμαστε. Λέει ότι πρέπει να έχουμε ένα C compiler, Βόνασος, και Καλώδιο εγκατασταθεί.

  Πώς να εγκαταστήσετε και να χρησιμοποιήσετε το KDE Apper σε Linux

Οι οδηγίες κατασκευής λένε να εκδώσουμε την εντολή make, επομένως θα χρειαστούμε επίσης make.

Τα εργαλεία που απαιτούνται για τη δημιουργία αυτής της εφαρμογής είναι ένας μεταγλωττιστής C, Bison, Flex, make και Git (για την κλωνοποίηση του αποθετηρίου στον υπολογιστή σας).

Αυτό το άρθρο ερευνήθηκε σε υπολογιστές που εκτελούν τις διανομές Ubuntu, Fedora και Manjaro Linux. Καμία από τη διανομή δεν είχε εγκαταστήσει όλα αυτά τα εργαλεία—κάτι έπρεπε να εγκατασταθεί σε καθένα από αυτά.

Εγκατάσταση του σετ εργαλείων

Το Ubuntu έπρεπε να έχει εγκατεστημένα τα Git, Flex, Bison και make. Εδώ είναι οι εντολές:

sudo apt-get install git

sudo apt-get install flex

sudo apt-get install bison

sudo apt-get install make

Το Fedora έπρεπε να έχει εγκατεστημένο το Flex, το Bison και το make. Εδώ είναι οι εντολές:

sudo dnf install flex

sudo dnf install bison

sudo dnf install make

Ο Manjaro έπρεπε να έχει εγκαταστήσει τον μεταγλωττιστή GCC, το Flex και το Bison. Εδώ είναι οι εντολές:

sudo pacman -Syu gcc

sudo pacman -Syu flex

sudo pacman -Syu bison

Κλωνοποίηση του Αποθετηρίου

Κάθε αποθετήριο GitHub έχει μια συγκεκριμένη διεύθυνση ιστού που χρησιμοποιείται με το Git για την κλωνοποίηση του αποθετηρίου στον υπολογιστή σας. Στην κύρια σελίδα του αποθετηρίου κουτιών, υπάρχει ένα πράσινο κουμπί με την ένδειξη “Κλωνοποίηση ή λήψη”.

ο

Κάντε κλικ στο κουμπί για να δείτε τη διεύθυνση web. Αυτή είναι η διεύθυνση που πρέπει να περάσουμε στην εντολή git όταν κλωνοποιούμε το αποθετήριο.

Μεταβείτε στον κατάλογο στον οποίο θέλουμε να κλωνοποιηθεί το αποθετήριο και, στη συνέχεια, χρησιμοποιήστε αυτήν την εντολή. Εάν το παράθυρο του τερματικού σας το υποστηρίζει, μπορείτε να αντιγράψετε και να επικολλήσετε τη διεύθυνση web στην εντολή. Πατήστε Ctrl+Shift+V για επικόλληση σε ένα παράθυρο τερματικού GNOME.

Το Git κλωνοποιεί το απομακρυσμένο αποθετήριο και δημιουργεί ένα τοπικό στον υπολογιστή σας. Μας λέει ότι κλωνοποιείται σε έναν κατάλογο που ονομάζεται “boxes”.

Ο κατάλογος boxes δημιουργείται μέσα στον κατάλογο από τον οποίο εκδώσατε την εντολή git. Εάν μεταβούμε στον κατάλογο boxes και κοιτάξουμε τα περιεχόμενα, θα δούμε την ίδια λίστα αρχείων και φακέλων που είδαμε στη σελίδα GitHub.

Εξαιρετική! Έχουμε κλωνοποιήσει με επιτυχία τον πηγαίο κώδικα και άλλα αρχεία στον υπολογιστή μας. Τώρα, πρέπει να δημιουργήσουμε την εφαρμογή.

Κατασκευή της Εφαρμογής

Για να δημιουργήσουμε την εφαρμογή, πρέπει να ακολουθήσουμε τις οδηγίες στο αποθετήριο GitHub. Μερικές φορές, θα τρέξουμε ένα συγκεκριμένο αρχείο κελύφους και άλλα που θα εκτελέσουμε, θα δημιουργήσουμε. Οι οδηγίες κατασκευής που ακολουθούμε μας είπαν να εκτελέσουμε το make.

Το βοηθητικό πρόγραμμα make διαβάζει και εκτελεί ένα σύνολο οδηγιών από ένα αρχείο makefile. Αυτές οι οδηγίες λένε στον make πώς να μεταγλωττίσει το πρόγραμμα και να το συνδέσει μεταξύ τους. το make περνά τις οδηγίες στον μεταγλωττιστή και άλλα εργαλεία κατασκευής.

Η εντολή που μας λένε να χρησιμοποιήσουμε θα καλέσει το make δύο φορές. Η πρώτη κλήση προς πραγματοποίηση δημιουργεί την εφαρμογή και η δεύτερη εκτελεί μια σειρά δοκιμών.

  Πώς να εγκαταστήσετε το KDE Plasma Mobile Linux σε Nexus 5 και 5X

Η εντολή που μας είπαν να χρησιμοποιήσουμε οι οδηγίες κατασκευής είναι:

make && make test

Πολλές γραμμές εξόδου μετακινούνται γρήγορα στο παράθυρο του τερματικού. Σε ένα λεπτό περίπου, θα επιστρέψετε στη γραμμή εντολών.

Ανάπτυξη των πλαισίων Εφαρμογή

Η εφαρμογή έχει κατασκευαστεί και έχουμε ένα εκτελέσιμο δυαδικό αρχείο. Πρέπει τώρα να αντιγράψουμε το δυαδικό στον κατάλογο /usr/bin/. Αυτό επιτρέπει στο κέλυφος να το βρει όταν προσπαθούμε να το χρησιμοποιήσουμε.

Για ορισμένες εφαρμογές, αυτό μπορεί να είναι το μόνο που έχετε να κάνετε. Σε άλλες περιπτώσεις, ίσως χρειαστεί να αντιγράψετε πρόσθετα αρχεία, όπως σελίδες man και αρχεία διαμόρφωσης, σε θέσεις στο σύστημα αρχείων. Το τελευταίο είναι αυτό που έχουμε να κάνουμε με τη νέα μας εφαρμογή γιατί ήταν στις οδηγίες κατασκευής.

Χρησιμοποιήστε το sudo για να εκτελέσετε αυτές τις εντολές. Η πρώτη εντολή αντιγράφει μια σελίδα man στον κατάλογο man1:

sudo cp doc/boxes.1 /usr/share/man/man1

Στη συνέχεια, αντιγράψτε το αρχείο καθολικής διαμόρφωσης σε έναν κατάλογο στο /usr/share/:

sudo cp boxes-config /usr/share/boxes

Τέλος, αντιγράψτε το δυαδικό αρχείο στο /usr/bin:

sudo cp src/boxes /usr/bin

Δοκιμή των πλαισίων Εφαρμογή

Ας δούμε αν όλα λειτουργούν! Προσπαθήστε να ανοίξετε τη σελίδα man για την εντολή boxes.

man boxes

Αυτό είναι ενθαρρυντικό! Βλέπετε μια σελίδα man που σας λέει πώς να χρησιμοποιήσετε την εντολή boxes.

Πατήστε “Q” για να βγείτε από το σύστημα man και προσπαθήστε να χρησιμοποιήσετε την εντολή boxes.

echo How-To Geek | boxes

Και παίρνουμε την απάντηση:

Αυτό μπορεί να φαίνεται ελαφρώς δυσβάσταχτο, λαμβάνοντας υπόψη όλη την προσπάθεια που καταβάλατε, αλλά ο σκοπός αυτής της άσκησης ήταν να σας καθοδηγήσει να τραβήξετε πίσω ένα αποθετήριο από το GitHub και να δημιουργήσετε την εφαρμογή.

Η εντολή boxes σάς επιτρέπει να αναδιπλώνετε κείμενο που μεταφέρεται σε αυτό σε μια μεγάλη ποικιλία πλαισίων. Μερικά από αυτά θα μπορούσαν να χρησιμοποιηθούν ως σχόλια σε αρχεία πηγαίου κώδικα. Η παραπάνω μορφή θα λειτουργούσε ως σχόλιο σε ένα αρχείο πηγαίου κώδικα C, για παράδειγμα. Άλλα είναι καθαρά διακοσμητικά. Η επιλογή -d (design) σας επιτρέπει να επιλέξετε το στυλ του πλαισίου.

echo How-To Geek | boxes -d whirly
echo How-To Geek | boxes -d c-cmt2

Υπάρχει μια μεγάλη λίστα με σχέδια από τα οποία μπορείτε να επιλέξετε. Για να τα δείτε όλα, χρησιμοποιήστε αυτήν την εντολή:

boxes -l | less

Η κατασκευή ολοκληρώθηκε

Τα βήματα για τη δημιουργία από την πηγή είναι συνήθως απλά:

Διαβάστε τις οδηγίες κατασκευής στο αποθετήριο.
Ελέγξτε ότι έχετε εγκαταστήσει τα απαιτούμενα εργαλεία και εγκαταστήστε όσα λείπουν.
Κλωνοποιήστε το αποθετήριο στον υπολογιστή σας.
Ακολουθήστε τις οδηγίες κατασκευής, οι οποίες είναι συχνά τόσο απλές όσο η πληκτρολόγηση make.
Αντιγράψτε τα αρχεία στις απαιτούμενες θέσεις.

Εάν υπάρχουν βήματα στις οδηγίες κατασκευής που είναι ασαφή, δείτε εάν το έργο έχει ένα φόρουμ ή μια κοινότητα στην οποία μπορείτε να στείλετε μια ερώτηση. Εάν η εφαρμογή διαθέτει ιστότοπο, μπορεί να έχει μια σελίδα “Επικοινωνήστε μαζί μας”. Ο προγραμματιστής που διατηρεί το έργο boxes έχει το email του στη σελίδα “About” του τον ιστότοπο boxes. Αυτή είναι μια γενναιόδωρη χειρονομία από την πλευρά του και χαρακτηριστική της ευρύτερης κοινότητας ανοιχτού κώδικα.