
Heb je al verteld “kloon van de repo-en bouwen,” en weet niet wat te doen? We tonen u hoe u het programma op GitHub draait op Linux, zelfs als u een beginner bent.
De instructies die een computer-programma geschreven, bewerkt en opgeslagen in tekstbestanden. Een programma met de naam van een compiler vervolgens met de verwerking van deze bestanden. Dit levert de uitvoerbare versie van het programma. De tekst bestanden van instructies die zijn genoemd in de broncode. De versie van het programma dat daadwerkelijk kan worden uitgevoerd op een computer heet de binaire of uitvoerbare.
Dat is een vereenvoudigde versie van de gebeurtenissen, maar het schildert een correct als algemene—foto. In de praktijk vind je allerlei variaties op dit model. Soms, andere programma ‘ s genereren de tekst bestanden. Andere tijden, de source code wordt uitgevoerd binnen een tolk en hoeft niet gecompileerd te worden, enzovoort.
Echter, de ene universele waarheid over alle software projecten is dit: de broncode bestanden zijn de kroonjuwelen, en ze moeten worden verzorgd net zo zorgvuldig.
Version Control Programma ‘ S
Alle source code bestanden binnen een project worden genoemd de codebase. Grote projecten hebben vaak veel ontwikkelaars die werken aan de codebase. Elke wijziging moet worden bijgehouden en herkenbaar. Indien nodig, de wijzigingen moeten worden omkeerbaar. Als verschillende ontwikkelaars wijzigingen aan hetzelfde broncode-bestand, hun bewerkingen moeten worden samengevoegd.
Het is niet verwonderlijk dus, dat software programma ‘ s genoemd versie controle systemen bestaan om het beheer van de veranderingen in de codebase gemakkelijker. Versie controle systemen alle vorige versies van elk bestand in de browser, en elke wijziging wordt vastgelegd, van commentaar voorzien, en bijgehouden.
Een Klein Ding Genaamd Git
Linus Torvalds, de maker van de Linux kernel, ontwikkelde een versie controle programma genaamd Git beheren van de Linux kernel codebase. Het is nu ‘ s werelds meest gebruikte versie beheer software. Er zijn miljoenen mensen met behulp van het—letterlijk.
Met Git, een project codebase is opgeslagen in repositories. In aanvulling op de lokale repositories die zitten op de ontwikkelaar van computers en, misschien, op een centrale server op het netwerk, het is een goede gewoonte om een off-site of remote repository.
En dat is waar GitHub komt.
GitHub
GitHub is ontstaan als gevolg van git ‘ s succes. De oprichters zagen de opkomende behoefte aan veilig gehost op afstand git repositories. Ze gestart met een bedrijf die een cloud-platform om de ontwikkeling van teams to host remote repositories. Met ingang van April 2019, GitHub gastheer van meer dan 100 miljoen repositories.
Als een toepassing is een open-source project is, is de kans erg hoog dat het zal worden gehost op GitHub. Er zijn andere repository platforms beschikbaar, zoals BitBucket en GitLab, maar GitHub heeft het leeuwendeel van de open broncode-repositories.
Anatomie van een Repository
Een GitHub repository bestaat uit mappen met bestanden, zoals het belang van de broncode. Meestal, er zijn vele andere soorten van bestanden in het archief. Er kan documentatie bestanden, man-pagina ‘ s, software licentie-bestanden, instructies voor het bouwen en shell script om de bestanden. Er zijn geen regels over wat een archief mag of moet bevatten, maar er zijn overeenkomsten.
Als je je weg weet in een keuken, kunt u navigeren in elke keuken. Het is hetzelfde met de repositories. Als je eenmaal begrijpt de conventies, u weet waar te gaan om te vinden wat je nodig hebt.
Dus, hoe krijg je een kopie van de broncode op uw computer, en hoe bouw je het programma in een uitvoerbaar binair bestand?
Het leesmij-Bestand
Het is traditioneel om een leesmij-bestand in een archief. Het kan worden genoemd readme, Readme, of LEESMIJ-bestand. Kan er een verlenging van “.md” of geen uitbreiding op alle.
Laten we eens een kijkje op de GitHub repository voor de Atom-editor. Zie je een lange lijst van mappen en bestanden. Scroll naar beneden en zie je de inhoud van het LEESMIJ-bestand.md-bestand.
GitHub automatisch zet de inhoud van het leesmij-bestand op de voorpagina van de gegevensopslagruimte. Als u het leesmij-bestand heeft een “.md” uitbreiding bevat Markdown markup language. Dit maakt het de ontwikkelaars gebruik van stijl-elementen, zoals lettertypen, opsommingstekens, en afbeeldingen.
Typisch, een readme bestand bevat secties die je vertellen wat het project inhoudt, wat het type licentie, wie houdt het project, hoe je betrokken, en hoe om te bouwen en uitvoeren van de toepassing.
Als het niet een lijst van de feitelijke instructies voor het bouwen, het zal u vertellen waar vindt u deze informatie. Andere informatie die nuttig is voor het bouwen van de toepassing, zoals het bouwen van gereedschap en andere afhankelijkheden, kan hier worden vermeld of een link kan je naar die informatie.
De dozen Archief
Onze missie is om een kloon van de vakken repository, en dan bouwen de dozen toepassing.
Het archief volgt dezelfde lay-out, de Atom gedaan. Er is een lijst van mappen en bestanden en hieronder is de inhoud van het leesmij-bestand. Het volgt de standaard lay-out voor een gegevensopslagruimte, maar het is een kleiner project, dus zijn er minder mappen en bestanden.
Het leesmij-bestand is korter ook. Het heeft een sectie met de naam “Ontwikkeling.” In die paragraaf is een link met de titel “bouwen vanaf broncode.” Als we op de link klikken, moeten we vinden van de informatie die we nodig hebben.
Er is meestal een lichtgewicht speurwerk nodig om te navigeren in de repository en het vinden van de informatie die je wilt, maar het is niet moeilijk. Lees alles op de archief-pagina aandachtig door. Soms, de informatie is er, maar kan niet prominent worden getoond.
De Afhankelijkheden
“De opbouw van de Bron” pagina heeft een sectie met de naam “Gebouw op Linux,” en dat is precies wat we nodig hebben. Het zegt dat we het moeten hebben van een C compiler, Bizons en Flex geïnstalleerd.
De instructies voor het bouwen zeg tot de afgifte van de te maken opdracht, dus zullen we ook moeten maken.
De hulpmiddelen die worden vereist om te bouwen van deze toepassing zijn van een C compiler, Bison, Flex, zorg en Git (om een kloon van de repository naar uw computer).
Dit artikel werd onderzocht op computers met Ubuntu, Fedora, en Manjaro Linux-distributies. Geen van de verdeling van deze tools zijn geïnstalleerd—er moest iets worden geïnstalleerd op elk van hen.
Het installeren van de Tool Set
Ubuntu moest hebben Git, Flex, Bizons, en maken geïnstalleerd. Hier zijn de commando ‘ s:
sudo apt-get install git
sudo apt-get install flex
sudo apt-get install bison
sudo apt-get install maken
Fedora had Flex, Bizons, en maken geïnstalleerd. Hier zijn de commando ‘ s:
sudo dnf installeren flex
sudo dnf installeren bison
sudo dnf installeren maken
Manjaro moest de GCC compiler, Flex en Bison geïnstalleerd. Hier zijn de commando ‘ s:
sudo pacman -Syu gcc
sudo pacman -Syu flex
sudo pacman -Syu bison
Het klonen van het Archief
Elke GitHub repository heeft een specifiek webadres gebruikt met Git om een kloon van de repository naar uw computer. Op de hoofdpagina van de vakken opslagplaats, er is een groene knop met het opschrift “Kloon of te downloaden.”
Klik op de knop om het web adres. Dit is het adres waar we moeten doorgeven aan de git commando wanneer we kloon van de repository.
Ga naar de map die we willen de gegevensopslagruimte gekloond in, en gebruik dan deze opdracht. Als je terminal venster ondersteunt, kunt u kopiëren en plak het webadres in de opdracht. Druk op Ctrl+Shift+V om te plakken in een GNOME-terminal venster.
Git klonen van de remote repository en wordt een lokale één op uw computer. Het vertelt ons dat het ‘ s klonen in een map genaamd “vakken.”
De dozen map gemaakt in de map waarin u uitgegeven de git commando. Als we overschakelen naar de vakken map en kijk naar de inhoud, zien we dezelfde lijst van bestanden en mappen die we zagen op de GitHub pagina.
Geweldig! We hebben met succes gekloond de source code en andere bestanden op onze computer. Nu moeten we om de applicatie te bouwen.
Het bouwen van de Applicatie
Om de toepassing te maken, moeten we volgen de aanwijzingen op de GitHub repository. Soms geven we een bepaalde shell bestand, en anderen die we maken. De instructies voor het bouwen we het volgende vertelde ons toe om te maken.
De make hulpprogramma leest en voert een set van instructies van een makefile. Deze instructies vertellen maken hoe om het programma te compileren en aan elkaar koppelen. zorg voor het doorgeven van de instructies voor de compiler en andere hulpmiddelen om te bouwen.
De opdracht ons verteld om het gebruik zal de call maak twee keer. De eerste oproep te maken, bouwt de applicatie, en de tweede loopt een suite van tests.
De opdracht de instructies voor het bouwen vertelde ons om te gebruiken is:
make && make-test
Veel regels van de uitvoer blader door snel in het terminal-venster. In een minuut of zo, keert u terug naar de opdrachtprompt.
De implementatie van de vakken Toepassing
De toepassing gebouwd is, en we hebben een uitvoerbaar binair. We moeten nu een kopie van de binaire naar de /usr/bin/ map. Dit stelt de shell om het te vinden als we proberen om het te gebruiken.
Voor sommige toepassingen, is dit alles wat je hoeft te doen. In andere gevallen moet u mogelijk om te kopiëren extra bestanden, zoals man-pagina ‘ s en configuratie bestanden, in locaties in het bestandssysteem. De laatste is wat we hebben te doen met onze nieuwe applicatie, want het was in de instructies voor het bouwen.
Sudo gebruiken voor het uitvoeren van deze opdrachten. De eerste opdracht kopieert u een man pagina in de man1 directory:
sudo cp doc/dozen.1 /usr/share/man/man1
Kopieer vervolgens de global config bestand naar een directory in /usr/share/:
sudo cp-dozen-config /usr/share/dozen
Ten slotte kopie van de binaire naar /usr/bin:
sudo cp src/vakken /usr/bin
Het testen van de vakken Toepassing
Laten we zien of het allemaal werkt! Probeer de man pagina voor de vakken opdracht.
man dozen
Dat is bemoedigend! Je ziet een man pagina vertellen u hoe u de dozen opdracht.
Druk op ‘ Q ‘ om de man te verlaten systeem en probeer de dozen opdracht.
echo How-To Geek | dozen
En krijgen we het antwoord:
Dit lijkt misschien een beetje teleurstellend gezien alle moeite die u hebt afgelegd, maar de bedoeling van deze oefening was om te lopen u door het terug trekken van een repository van GitHub, en het bouwen van de applicatie.
De dozen commando kunt u de wrap tekst die wordt doorgesluisd naar het in een breed scala van frames. Een aantal van hen zou kunnen worden gebruikt als commentaar in de broncode. De indeling hierboven zou werken als een reactie in een C-broncode-bestand, bijvoorbeeld. Anderen zijn puur decoratief. De -d (design) optie kunt u kiezen voor de stijl van het frame.
echo How-To Geek | dozen -d whirly
echo How-To Geek | dozen -d-c-cmt2
Er is een lange lijst van ontwerpen waaruit u kunt kiezen. Om ze allemaal te zien, gebruik je dit commando:
dozen -l | minder
Het Bouwen Van Volledige
De stappen om vanaf broncode te bouwen zijn meestal eenvoudig:
- Bekijk de instructies voor het bouwen op de gegevensopslagruimte.
- Controleer of u over de vereiste hulpprogramma ‘ s geïnstalleerd en installeer eventuele ontbreken.
- Kloon van de repository naar uw computer.
- Volg de instructies voor het bouwen, die zijn vaak zo eenvoudig als het typen van maken.
- Kopieer het bestand(en) naar de gewenste locaties.
Als er stappen in de instructies voor het bouwen, die zijn onduidelijk, zie wanneer het project een forum of community kunt u een vraag aan. Als de toepassing een website heeft, kunnen ze een “Contact” pagina. De ontwikkelaar die zorgt voor de vakken project heeft zijn e-mail op de “About” – pagina van de vakken website. Dat is een genereus gebaar van zijn kant, en een typisch voorbeeld van de open source gemeenschap.
LEES VERDER
- “Wat is het Verschil Tussen NTSC en PAL?
- “Niet Alle 5G, Is Gelijk aan: Millimeter Wave, Lage Band, en de Mid-Band Uitgelegd
- “Het Gebruik van de zoek Opdracht op Linux
- “Hoe Herstart Je Modem en Router
- “Uw Volgende SSD Kan Langzamer (met Dank aan QLC Flash)