Wyszukiwanie w witrynie

Jak zainstalować GNU GCC (kompilator C i C++) oraz narzędzia programistyczne w RHEL/CentOS i Fedorze


W dzisiejszych czasach, jako administrator systemu lub inżynier, nie możesz czuć się usatysfakcjonowany wiedząc, jak korzystać z interfejsu CLI i rozwiązywać problemy z serwerami GNU/Linux, ale będziesz musiał pójść o krok dalej w obszarze programowania, aby pozostać na szczycie swojej gry . Jeśli rozważasz karierę w rozwoju jądra lub aplikacji dla systemu Linux, najlepszym miejscem na rozpoczęcie będzie C lub C++.

Przeczytaj także: Zainstaluj C, C++ i zbuduj niezbędne narzędzia w Debianie/Ubuntu/Mint

W tym artykule wyjaśnimy, jak zainstalować kompilatory Gnu C i C++ oraz powiązane z nimi narzędzia programistyczne, takie jak automake, autoconf, flex, bison itp. w systemach Fedora i CentOS/RHEL.

Co to jest kompilator?

Krótko mówiąc, kompilator to program, który przekształca instrukcje napisane w języku źródłowym na język docelowy, zrozumiały i wykonany przez procesor maszyny.

W Fedorze i pochodnych (właściwie dotyczy to także całego ekosystemu dystrybucji Linuksa) najbardziej znanymi kompilatorami C i C++gcc i g++, odpowiednio, oba opracowane i aktywnie wspierane przez Free Software Foundation w ramach projektu GNU.

Instalowanie GCC (kompilatora C++ i narzędzi programistycznych

Jeśli gcc i/lub g++ oraz powiązane z nimi Narzędzia programistyczne nie są domyślnie zainstalowane w Twoim systemie, możesz zainstalować najnowsze dostępne z repozytoriów następująco:

yum groupinstall 'Development Tools'		[on CentOS/RHEL 7/6]
dnf groupinstall 'Development Tools'		[on Fedora 22+ Versions]

Zanim zajmiemy się pisaniem kodu C lub C++, chcemy Ci pokazać jeszcze jedno narzędzie, które wzbogaci Twój zestaw narzędzi programistycznych.

Przyspieszanie kompilacji C i C++ w systemie Linux

Kiedy w ramach procesu programowania musisz kilkakrotnie rekompilować po wprowadzeniu zmian w kodzie źródłowym, wspaniale jest mieć pamięć podręczną kompilatora, aby przyspieszyć przyszłe rekompilacje.

W systemie Linux dostępne jest narzędzie o nazwie ccache, które przyspiesza rekompilację poprzez buforowanie poprzednich kompilacji i wykrywanie, kiedy ta sama kompilacja jest wykonywana ponownie. Oprócz C i C++ obsługuje także Objective-C i Objective-C++.

Ccache ma tylko kilka ograniczeń: jest przydatny tylko podczas rekompilacji pojedynczego pliku. W przypadku innych typów kompilacji proces zakończy się uruchomieniem rzeczywistego kompilatora. To samo dzieje się, jeśli flaga kompilatora nie jest obsługiwana. Dobra strona jest taka, że w żadnym wypadku nie będzie to kolidować z faktyczną kompilacją i nie wygeneruje błędu – po prostu wróć do właściwego kompilatora.

Zainstalujmy to narzędzie:

yum install ccache 

i zobacz jak to działa na przykładzie.

Testowanie kompilatora GNU C za pomocą prostego programu w C++

Jako przykład użyjmy prostego programu C++, który oblicza pole prostokąta po podaniu jego długości i szerokości jako danych wejściowych.

Otwórz swój ulubiony edytor tekstu i wprowadź następujący kod, a następnie zapisz jako area.cpp:

#include <iostream> 
using namespace std;  

int main() 
{ 
float length, width, area; 

cout << "Enter the length of the rectangle: "; 
cin >> length; 
cout << "Now enter the width: "; 
cin >> width; 
area = length*width; 

cout <<"The area of the rectangle is: "<< area << endl;

return 0; 
} 

Aby skompilować powyższy kod do pliku wykonywalnego o nazwie obszaru w bieżącym katalogu roboczym, użyj przełącznika -o z g++:

g++ area.cpp -o area

Jeśli chcesz skorzystać z ccache, po prostu dodaj do powyższego polecenia słowo ccache w następujący sposób:

ccache g++ area.cpp -o area 

Następnie uruchom plik binarny:

./area
Przykładowe wyjście
Enter the length of the rectangle: 2.5
Now enter the width: 3.7
The area of the rectangle is: 9.25

Nie pozwól, aby ten prosty przykład sprawił, że pomyślisz, że ccache nie jest przydatne. Dowiesz się, jak doskonałym narzędziem jest ccache podczas rekompilacji dużego pliku kodu źródłowego. Ta sama zasada dotyczy również programów w języku C.

Streszczenie

W tym artykule wyjaśniliśmy, jak zainstalować i używać kompilatorów GNU dla C i C++ w dystrybucjach opartych na Fedorze.

Ponadto pokazaliśmy, jak wykorzystać pamięć podręczną kompilatora, aby przyspieszyć rekompilację tego samego kodu. Chociaż możesz zapoznać się ze stronami podręcznika online dotyczącymi gcc i g++, aby uzyskać dalsze opcje i przykłady, czekamy na wiadomość od Ciebie, jeśli masz jakieś pytania lub komentarze.