Instalirajte C, C++ kompajler i razvojne (bitne za izgradnju) alate u Debian/Ubuntu


Od većine Linux sistemskih administratora i inženjera se traži da znaju neke osnovne programe koji će im pomoći u svakodnevnim zadacima. Ako žele ići korak dalje u oblasti razvoja (bilo kao programeri kernela ili aplikacija), onda je C ili C++ najbolje mjesto za početak.

Pročitajte također: Instalirajte C, C++ i razvojne alate u RHEL/CentOS/Fedora

U ovom članku ćemo objasniti kako instalirati C i C++ kompajlere i njihove razvojne alate (build-essential ) povezane pakete kao što su make, libc-dev, dpkg-dev, itd. u Debianu i derivatima kao što su Ubuntu i Linux Mint.

Softver osnovni za izgradnju sadrži informativni popis softvera koji se tretiraju kao važni za izgradnju Debian paketa uključujući gcc kompajler, make i druge potrebne alate.

Šta je kompajler?

Jednostavno rečeno, kompajler je softverski program koji obrađuje instrukcije napisane u programskom jeziku i kreira binarnu datoteku koju CPU mašine može razumjeti i izvršiti.

U distribucijama baziranim na Debianu, najpoznatiji C i C++ prevodioci su gcc i g++, redom. Oba programa je razvila i još uvijek ih održava Fondacija za slobodni softver kroz GNU projekat.

Instaliranje C, C++ kompajlera i razvojnih alata (bitno za izgradnju)

Ako vaš sistem nema paket build-essential instaliran u vašem sistemu prema zadanim postavkama, možete instalirati najnoviju dostupnu verziju iz zadanih distribucijskih spremišta na sljedeći način:

apt-get update && apt-get install build-essential     
OR
sudo apt-get update && sudo apt-get install build-essential

Sada smo spremni da počnemo kucati C ili C++ kod... ili skoro. Upravo ćemo vam pokazati još jedan alat za poboljšanje vašeg skupa razvojnih alata.

Ubrzavanje C i C++ kompilacija

Kada znate da ćete morati kompajlirati program, napraviti izmjene, a zatim ponovo kompajlirati, sjajno je imati alat kao što je ccache, koji je, kao što ćete vjerovatno pretpostaviti na osnovu njegovog imena, keš kompajlera.

Ubrzava ponovnu kompilaciju keširanjem prethodnih kompilacija i otkrivanjem kada se ista kompilacija ponovo radi. Osim C i C++, podržava i Objective-C i Objective-C++. Jedina ograničenja su:

  1. Podržava samo keširanje kompilacije jedne C/C++/Objective-C/Objective-C++ datoteke. Za druge vrste kompilacije (kompilacija sa više datoteka, povezivanje, da navedemo nekoliko primjera), proces će završiti pokretanjem pravog kompajlera.
  2. Neke zastavice kompajlera možda neće biti podržane. Ako se otkrije takva zastavica, ccache će se tiho vratiti na pokretanje pravog kompajlera.

Hajde da instaliramo ovaj alat:

aptitude install ccache

U sledećem odeljku ćemo videti neke primere kompilacije C i C++ koda sa i bez ccache-a.

Testiranje C i C++ sa primjerom programa

Upotrijebimo klasičan primjer vrlo osnovnog C programa koji zbraja dva broja. Otvorite svoj omiljeni uređivač teksta i unesite sljedeći kod, a zatim ga sačuvajte kao sum.c:

#include<stdio.h>
int main()
{
   int a, b, c;
   printf("Enter two numbers to add, separated by a space: ");
   scanf("%d%d",&a,&b);
   c = a + b;
   printf("The sum of equals %d\n",c);
   return 0;
}

Za prevođenje gornjeg koda u izvršnu nazvanu sumu u trenutnom radnom direktoriju koristite prekidač -o sa gcc:

gcc sum.c -o sum

Ako želite da iskoristite prednosti ccache, samo dodajte gornju komandu sa ccache, kako slijedi:

ccache gcc sum.c -o sum

Zatim pokrenite binarni program:

./sum

Iako nam ovaj osnovni primjer ne dozvoljava da vidimo punu snagu keš memorije, za veće programe brzo ćete shvatiti o kakvom se odličnom alatu radi. Isto važi i za C++ programe.

Sažetak

U ovom vodiču pokazali smo kako instalirati i koristiti GNU kompajlere za C i C++ u Debianu i derivatima. Osim toga, objasnili smo kako koristiti keš kompajlera da ubrzamo ponovnu kompilaciju istog koda. Iako se možete obratiti mrežnim man stranicama za gcc i g++ za daljnje opcije i primjere, ne ustručavajte se da nam pošaljete napomenu koristeći formu ispod ako imate bilo kakvih pitanja ili komentara.