Hoe je dat spel / programma compileert dat ik zojuist heb gedownload

Laten we veronderstellen je hebt zojuist de broncode van je favoriete spel of programma gedownload en wilt deze compileren om ervan te kunnen genieten. Hoe kun je zo'n gigantische taak volbrengen? Maak je geen zorgen, het compileren en installeren van dat spel / programma op Linux is niet zo moeilijk als het klinkt.

Bouw en installeer procedure

Telkens wanneer u de broncode van een programma downloadt, wordt deze gecomprimeerd in een bestand dat, onder Linux, over het algemeen van het type tar.gz of tar.bz2 is. Natuurlijk kan het in elk ander formaat komen (bijvoorbeeld zip), maar dat is meestal de regel.

Dus de eerste stap is om dat bestand uit te pakken. De eenvoudigste methode is door Nautilus te openen, met de rechtermuisknop op het betreffende bestand te klikken en te selecteren uitpakken. De methode die we hier zullen zien, is echter degene die door de terminal wordt gebruikt.

Zodra het bestand is uitgepakt, wordt een map gemaakt waartoe we toegang moeten hebben en van waaruit we de configuratie en compilatie van het programma zullen starten.

Wanneer u dit allemaal vanaf de terminal doet, zijn de te gebruiken commando's:

tar xvzf package.tar.gz (of tar xvjf package.tar.bz2) cd-pakket ./configure make make install

Dit zijn de commando's die men in het algemeen moet volgen, maar het zou raadzaam zijn om elk van deze stappen dieper te analyseren om goed te begrijpen wat ze inhouden.

Stap 1: decompressie

De extensie tar.gz of tar.bz2 betekent dat de broncode die je hebt gedownload, wordt gecomprimeerd tot een tar-bestand, ook wel tarball genoemd. Dit vereenvoudigt de verspreiding van de broncode aanzienlijk, aangezien alle bestanden en mappen waaruit de code bestaat, zijn verpakt in één enkel bestand. Eenmaal verpakt, in het tar-bestand, wordt dat bestand gecomprimeerd met behulp van het gz- of bz2-algoritme, afhankelijk van de smaak van de ontwikkelaar.

Om een ​​tar.gz-bestand uit te pakken, schreef ik:

tar xvzf pakket.tar.gz

In het geval van een tar.bz2-bestand:

tar xvjf pakket.tar.bz2

In de meeste gevallen zal hierdoor een map worden aangemaakt in de directory waar het gecomprimeerde bestand zich bevindt. De naam van de map is hetzelfde als het gecomprimeerde bestand.

Stap 2: configuratie

Nadat u de map hebt ingevoerd die is gemaakt door het bestand tar.gz of tar.bz2 uit te pakken ...

cd-map

… Het is tijd om het pakket te configureren. Meestal, maar niet altijd (daarom is het belangrijk om de README- en INSTALL-bestanden te lezen), wordt dit bereikt door het configuratiescript uit te voeren:

. / Configure

Als u dit script uitvoert, wordt er nog niets geïnstalleerd, wordt alleen het systeem gecontroleerd en worden waarden toegewezen aan enkele systeemafhankelijke variabelen. Deze waarden worden gebruikt om een ​​Makefile te maken. De Makefile wordt op zijn beurt gebruikt om het binaire bestand te maken dat aan het einde van het verhaal het programma zal laten draaien.

Als je dit commando uitvoert, zul je zien dat het scherm zich vult met een heleboel ietwat cryptische berichten. In geval van een fout zal er een bericht verschijnen; en als alles goed gaat, kunnen we naar de volgende stap springen. 🙂

Stap 3: het bouwen van het binaire bestand

Het is tijd om het binaire bestand te bouwen, dat niets meer is dan het uitvoerbare bestand van het programma. Met andere woorden, deze procedure omvat de transformatie van bestanden die zijn geschreven in een programmeertaal op hoog niveau naar zuivere nullen en enen, dat wil zeggen de enige taal die onze computer begrijpt.

maken

Om deze opdracht te laten slagen, moet de vorige stap zijn geslaagd. Zonder de Makefile zal make mislukken. Daarom is het zo belangrijk dat het installatiescript met succes wordt uitgevoerd.

Ja, het scherm vult zich weer met vreemde berichten en het zal waarschijnlijk even duren voordat het klaar is. Dat hangt af van de grootte van het programma en de snelheid van uw computer.

Stap 4: installatie

Natuurlijk hebben we het uitvoerbare bestand al, maar de installatie ervan ontbreekt. Deze stap moet worden uitgevoerd met beheerdersrechten.

sudo make install

Omdat we in dit hypothetische geval geen wijzigingen hebben aangebracht in het configuratiebestand, wordt het programma in de standaardmap geïnstalleerd. Over het algemeen is dit meestal / Usr / local / bin aangezien het toestaat dat vanaf elke kant bij het schrijven van de naam van het programma het wordt uitgevoerd (zonder het volledige pad van het programma in te voeren).

Stap 5: uitvoering

Nee, we hebben niemand vermoord. Het is gewoon het hoogtepunt van het hele compilatie- en installatieproces. Om het programma uit te voeren dat we zo nauwgezet naar een binair bestand hebben geconverteerd, schreef ik:

./programma naam

Als het programma in een andere map is geïnstalleerd dan / usr / local / bin, moet u het volledige pad van het programma invoeren.

De boerderij opruimen

Als je heel, heel weinig schijfruimte hebt, wil je misschien alle bestanden verwijderen die tijdens het binaire buildproces zijn gemaakt. In dat geval heb ik de map geopend die is gemaakt door het bestand uit te pakken en te typen:

maak schoon

Opmerking: zorg ervoor dat u uw Makefile. Dit bestand is nodig om het programma in de toekomst te verwijderen.

Verwijderen

Het programma was niet wat we hadden verwacht en we willen het van ons systeem wissen. Hoe? Wordt het programma dat ik zojuist heb geïnstalleerd niet weergegeven in het Software Center of Synaptic? En nu?

Als u uw Makefile niet heeft verwijderd, is het mogelijk om het programma eenvoudig te verwijderen. Ik heb de volgende opdracht geschreven in de map die is gemaakt tijdens het uitpakken van het bestand:

maak de-installatie

Als u pech had en de verwijdering niet is gelukt, zit er geen andere keuze dan de bestanden met de hand te verwijderen. Een echte hoofdpijn. Om erachter te komen waar deze bestanden zich bevinden, kunt u een kijkje nemen in uw Makefile.

Als u Makefile heeft verwijderd, kunt u het programma het beste opnieuw installeren en het vervolgens doen maak de installatie ongedaan, aangezien dit het Makefile. Vergeet niet om het te installeren met dezelfde instellingen (in dit geval geen) in het . / Configure.


Laat je reactie achter

Uw e-mailadres wordt niet gepubliceerd. Verplichte velden zijn gemarkeerd met *

*

*

  1. Verantwoordelijk voor de gegevens: Miguel Ángel Gatón
  2. Doel van de gegevens: Controle SPAM, commentaarbeheer.
  3. Legitimatie: uw toestemming
  4. Mededeling van de gegevens: De gegevens worden niet aan derden meegedeeld, behalve op grond van wettelijke verplichting.
  5. Gegevensopslag: database gehost door Occentus Networks (EU)
  6. Rechten: u kunt uw gegevens op elk moment beperken, herstellen en verwijderen.

  1.   Alex zei

    Goede tuto, heel erg bedankt, altijd als we starten in Linux is een van de grootste problemen hoe te compileren, goed uitgelegd, hoewel het raadzaam is om de readme te lezen of te installeren ...

  2.   Alex zei

    Goede tuto, heel erg bedankt, altijd als we starten in Linux is een van de grootste problemen hoe te compileren, goed uitgelegd, hoewel het raadzaam is om de readme te lezen of te installeren ...

  3.   emilia perez zei

    «Als u pech heeft gehad en de verwijdering is mislukt, zit er niets anders op dan de bestanden met de hand te verwijderen. Een echte hoofdpijn »

    Het is beter om het opnieuw te installeren en vervolgens "make uninstall" te doen, aangezien we de Makefile opnieuw zullen laten genereren. Het is belangrijk om het te installeren met dezelfde instellingen (in dit geval geen) in configureren.

  4.   John zei

    als u het nu niet wilt uitvoeren door de naam van het programma in te voeren maar een snelkoppeling naar het bureaublad wilt maken of het wilt laten verschijnen in het toepassingsmenu, hoe doet u dat dan?
    Groeten!

  5.   kiwi_kiwi zei

    Goede tutorial. Nu kan zelfs ik compileren.

  6.   marcoshipe zei

    Ik denk dat de tweede stap zou zijn om het readme te lezen (RTFR xD) en het is de meest fundamentele van allemaal, aangezien veel programma's afhankelijkheden hebben waaraan je moet voldoen bij de installatie, of er is een extra stap nodig of het is ook goed dat u het leest omdat het goede opties biedt voor het merk dat ons mogelijk interesseert.

    Groeten!

  7.   Laten we Linux gebruiken zei

    Helemaal! Daarom raad ik aan altijd README en INSTALL te lezen.

  8.   Laten we Linux gebruiken zei

    Je hebt gelijk. Dat, voor het geval je de Makefile niet hebt. Ik had het over het geval dat zelfs met Makefile het om een ​​andere reden niet verwijderd kon worden.
    Hoe dan ook, ik ga je opmerking aan de post toevoegen, die volgens mij zeer relevant en nauwkeurig is.

    Een knuffel en bedankt voor je reactie! Paul.

  9.   Laten we Linux gebruiken zei

    Tudo bem Krafty! Niemand is beledigd. Ik heb dit bericht geschreven omdat ik het onderwerp nog nooit op de blog had besproken. Hoe dan ook, ik neem nota van de onderwerpen die u aanbeveelt (enkele zeer goede). Ik zal er zeker in de niet al te verre toekomst over schrijven.
    Een dikke knuffel en bedankt voor het achterlaten van je opmerkingen! Paul.

  10.   kraftig zei

    Ik wil niet gemeen zijn, maar dit onderwerp is dit jaar tot nu toe al verschillende keren besproken.

    Ik stel een aantal onderwerpen voor, zodat je kunt zien dat ik geen opmerking achterlaat om alleen maar een bard te maken.

    - Telefonie over IP
    - Verschillende Torrent-clients (welke te kiezen).
    - Creëren van scripts van die dingen die we herhaaldelijk in de console hebben.
    - Verwijder modules uit de kernel zodat het Linux sneller initialiseert tijdens het opstarten.

    Ik hoop dat ik niemand heb beledigd / lastig gevallen

  11.   gast zei

    geweldig, geweldig voor degenen onder ons die begonnen los te komen met linux

  12.   Laten we Linux gebruiken zei

    Ja, over het algemeen worden deze gedetailleerd beschreven in de README. Anders zal bij het compileren een fout verschijnen en op basis van de fout (die aangeeft welke bibliotheek ontbreekt) zullen we de juiste afhankelijkheid moeten installeren.
    Een knuffel! Paul.

  13.   Cello's zei

    Krafty, je bent zonder twijfel echt slecht. Waar heb je een tutorial als deze gezien, zo duidelijk en verklarend? voor mij is het uitstekend, salu2,

  14.   rv zei

    Heel erg bedankt voor de gids! Het heeft me geholpen om een ​​aantal dingen te verduidelijken 🙂

    Trouwens, een tip die voor mij redelijk goed heeft gewerkt om het probleem van afhankelijkheden op te lossen, is om allereerst 'sudo apt-get build-dep programmanaam' te doen; Ik weet niet of het in alle distributies werkt, ik heb het gebruikt in Debian (Squeeze, waar ik onlangs MuseScore 1.2 heb gecompileerd om de archaïsche opslagplaatsen van de stabiele branch te verlichten ... 😉

    Ik kan me voorstellen dat iemand die beter geïnformeerd is, fijnere details kan geven 🙂

    Groeten!

  15.   rosgory zei

    Moeten we geen rekening houden met de afhankelijkheden die het programma nodig heeft voordat we compileren?

  16.   Diego Garcia zei

    Ik heb weinig tijd met het gebruik van linux, en dit is een van mijn grootste twijfels, dit zal erg handig zijn omdat ik geen bericht had gevonden met dit specifieke onderwerp tema
    of ken je er een?
    Groeten ..

  17.   kaders zei

    geweldig, ik had dit bericht niet gezien, maar waarom is dat type 1-fout of type 2-fout

  18.   ibon zei

    Is er geen andere methode?
    Deze methode heb ik al met succes gebruikt. Het probleem is dat er heel veel broncodeprogramma's zijn die dat systeem niet gebruiken, we hebben het configuratiescript niet. Ik zou graag willen hoe ze te compileren.