Linux-användare har i allmänhet en enkel tid att hitta och installera programvara. Nästan varje distribution har ett mjukvaruförråd med ett fint grafiskt front-end. För att installera ett program behöver du vanligtvis bara söka efter det och tryck sedan på "Installera" -knappen. Om programvaran inte är tillgänglig i förvaret, kan du vanligtvis hitta förkompilerade binärer online någonstans. Då är det bara en fråga om att köra apt-get, yum eller liknande (beroende på vilken Linux-distribution du använder) för att installera dem. Ibland har du dock inget annat val än att kompilera Linux-program från källan själv, speciellt om du vill ha den blödande utvecklingsversionen av ett program för vilket det inte finns några färdiga binärer.

Vill du lära dig att kompilera Linux-program från källan? Läs sedan vidare!

Av någon anledning, utsikten att behöva kompilera Linux-program från källan skrämmer många Linux-användare - även de som har använt operativsystemet i många år. Men det behöver inte skrämma dem. Installera programvara från källkodsfiler är i de flesta fall en enkel operation. Och om du lär dig grundläggande tekniker, så kommer du snart att kunna diagnostisera de problem som uppstår vid de tillfällena när sakerna inte går som planerat.

Steg som krävs för att kompilera Linux-program från källan

För att kompilera Linux-program från källan, använd en fyra stegs process:

  1. Packa upp källkoden
  2. Lösa beroenden
  3. Kompilera det
  4. Installera det

1. Packa upp källkoden

I det här exemplet kommer vi att kompilera SQLite-databasen. Om du vill följa med, ladda ner den senaste källkoden tarball (en .tar.gz fil).

En tarball är bara en komprimerad fil, mycket lik en .zip fil. Det kommer antingen att ha förlängningen tar.gz eller .tgz . För att arbeta med innehållet måste du först extrahera dem med följande kommando:

 tar -xzvf filnamn.tar.gz 

Ibland har du en tar.bz (eller tar.bz2 ). Använd följande kommando om du arbetar med en tar.bz fil:

 tar -xjvf filename.tar.bz 

Denna process skapar en katalog med samma namn som filen.

2. Lösning av beroende

Skriv in den här nya katalogen med cd directory name ./configure sudo (eller su i många andra Linux-distributioner), kör kommandot ./configure :

 cd katalognamn sudo ./configure 

Kommandot ./configure kontrollerar för att se om all programvara som det här programmet bygger på - till exempel en lämplig kompilator - är installerad. ./ prefixet berättar för Linux att leta efter configure i den aktuella katalogen och utföra den. Observera att ibland configure inte är namnet på filen som löser dessa beroenden. Om du får ett fel när du kör configure titta i katalogen för en "README" eller "INSTALL" -fil eller liknande. Det ska berätta vilken fil som är ansvarig för detta steg. Det är faktiskt en bra idé att läsa några inkluderade filer innan du försöker kompilera något program.

Om allt går bra ser du inga fel. Vi hade tur här. Vanligtvis kommer du emellertid att sakna något. Granska bara produktionen och installera eventuella saknade beroenden genom att använda din pakethanterare. Kör ./configure igen tills du inte ser några fler fel.

3. Sammanställning

När du har löst alla beroenden måste du sammanställa programmet. Använd kommandot make att göra detta:

 sudo make 

Denna process kan ta några minuter och väsentligt längre för vissa program. Se till att utmatningen inte visar några fel innan du fortsätter.

4. Installation

Vid denna tidpunkt har du sammanställt binärerna, men nu måste du installera dem. Utför bara make install . Detta steg flyttar alla binärer till deras korrekta plats på ditt system så att ditt program är klart att använda:

 sudo gör installationen 

Om du har följt med, kör sqlite3 vid en terminalprompt, och om databasen har installerats korrekt bör du se SQL-prompt-databasen.

Grattis! Men vad händer om du vill ta bort det program du just installerat? Det är enkelt. Besök bara katalogen du installerade programmet från och kör:

 sudo avinstallera 

Följd av:

 sudo gör rent 

Slutsats

Det är enkelt att installera de flesta program från källan på detta sätt, men vissa kräver lite olika steg från de som visas här. Du kan till exempel behöva använda cmake istället för att make . Läs alltid den bifogade "README", "INSTALL" eller annan dokumentation som tillhandahålls av utvecklarna, och du kommer inte gå för långt fel.