Hoe te Compileren en installeren van Source op Ubuntu
Ubuntu en andere Linux-distributies hebben uitgebreide pakketrepository's om je de moeite te besparen om zelf iets te compileren. Toch vind je soms een obscure applicatie of een nieuwe versie van een programma dat je moet compileren vanaf de bron.
Je hoeft geen programmeur te zijn om een programma vanaf de bron te bouwen en het op je systeem te installeren; je hoeft alleen de basis te kennen. Met slechts een paar commando's kun je van bron als een professional bouwen.
De vereiste software installeren
Door het build-essential pakket in de pakketrepository's van Ubuntu te installeren, wordt automatisch de basissoftware geïnstalleerd die je nodig hebt om te compileren vanaf de bron, zoals de GCC-compiler en andere hulpprogramma's. Installeer het door de volgende opdracht in een terminal uit te voeren:
sudo apt-get install build-essentieel
Typ Y en druk op Enter om de installatie te bevestigen wanneer daarom wordt gevraagd.
Een bronpakket krijgen
Nu hebt u de broncode van uw gewenste toepassing nodig. Deze pakketten bevinden zich meestal in gecomprimeerde bestanden met de bestandsextensies .tar.gz of .tar.bz2.
Laten we als voorbeeld proberen Pidgin uit de bron te compileren - misschien is er een nieuwere versie die nog niet is verpakt en we willen hem nu. Zoek het .tar.gz- of .tar.bz2-bestand op en bewaar het op uw computer.
Een .tar.gz of .tar.bz2 is als een .zip-bestand. Om het te gebruiken, moeten we de inhoud extraheren.
Gebruik deze opdracht om een .tar.gz-bestand uit te pakken:
tar -xzvf file.tar.gz
Of gebruik deze opdracht om een .tar.bz2-bestand uit te pakken:
tar -xjvf file.tar.bz2
Je zult eindigen met een map met dezelfde naam als je broncodepakket. Gebruik de opdracht cd om het in te voeren.
Het oplossen van afhankelijkheden
Als u zich in de uitgepakte map bevindt, voert u de volgende opdracht uit:
./ configure
(Merk op dat sommige toepassingen ./configure niet gebruiken. Controleer het bestand "README" of "INSTALL" in de uitgepakte map van de toepassing voor meer specifieke instructies.)
(De ./ part vertelt de Bash-shell om in de huidige map naar het "configure" -bestand te kijken en het uit te voeren. Als je de ./ weglaat, zoekt Bash naar een programma met de naam "configure" in systeemdirectory's als / bin en / usr / bin.)
De opdracht ./configure controleert uw systeem op de vereiste software die nodig is om het programma te bouwen.
Tenzij je geluk hebt (of al een groot aantal vereiste pakketten op je systeem hebt), ontvang je foutmeldingen, waarmee je aangeeft dat je bepaalde pakketten moet installeren. Hier zien we een foutmelding dat de intltool-scripts niet aanwezig zijn op hun systeem. We kunnen ze installeren met de volgende opdracht:
sudo apt-get installeer intltool
Nadat u de vereiste software hebt geïnstalleerd, voert u de opdracht ./configure opnieuw uit. Als u extra software moet installeren, herhaalt u dit proces met de sudo apt-get install opdracht tot ./configure is voltooid. Niet elk vereist pakket heeft de exacte naam die u in het foutbericht ziet. Mogelijk moet u het foutbericht van Google gebruiken om de vereiste pakketten te bepalen.
Als een oudere versie van het programma dat u probeert te compileren zich al in de softwarebronnen van Ubuntu bevindt, kunt u cheaten met de sudo apt-get build-dep commando. Bijvoorbeeld als ik loop sudo apt-get build-dep pidgin, apt-get zal automatisch alle afhankelijkheden downloaden en installeren die ik nodig heb om Pidgin te compileren. Zoals u ziet, hebben veel van de pakketten die u nodig hebt, een einde -dev.
Nadat ./configure is voltooid, bent u klaar om het pakket te compileren en te installeren.
Compileren en installeren
Gebruik de volgende opdracht om het programma te compileren:
maken
Dit proces kan enige tijd duren, afhankelijk van uw systeem en de grootte van het programma. Als ./configure met succes is voltooid, zou make geen problemen moeten hebben. Je ziet de tekstregels scrollen wanneer het programma compileert.
Nadat deze opdracht is voltooid, is het programma met succes gecompileerd - maar het is niet geïnstalleerd. Gebruik de volgende opdracht om het op uw systeem te installeren:
sudo make install
Het wordt waarschijnlijk opgeslagen onder / usr / local op uw systeem. / usr / local / bin maakt deel uit van het pad van je systeem, wat betekent dat we gewoon kunnen typen "pidgin"Naar een terminal om Pidgin zonder gedoe te lanceren.
Verwijder de programmamap niet als u deze later wilt installeren - u kunt de volgende opdracht uit de map uitvoeren om het programma van uw systeem te verwijderen:
sudo maak de-installatie ongedaan
Programma's die u op deze manier installeert, worden niet automatisch bijgewerkt door UBuntu's Update Manager, zelfs als deze beveiligingskwetsbaarheden bevatten. Tenzij u een specifieke toepassing of versie nodig hebt die niet in de softwarebronnen van Ubuntu is opgenomen, is het een goed idee om de officiële pakketten van uw distributie bij de hand te houden.
Er zijn veel geavanceerde trucs die we hier niet behandeld hebben - maar hopelijk is het proces van het compileren van je eigen Linux-software niet meer zo eng meer.