В Linux GCC означава Колекция от компилатори на GNU . Това е компилираща система за различните езици за програмиране. Използва се главно за компилиране на C и C++ програми. Той приема името на изходната програма като необходим аргумент; останалите аргументи са незадължителни като отстраняване на грешки, предупреждение, обектен файл и свързващи библиотеки.
GCC е основен компонент на инструменталната верига на GNU. Различни проекти с отворен код се компилират с помощта на GCC, като Linux ядрото и GNU инструменти.
Разпространява се под GPL (общ публичен лиценз). Първата версия, GCC 1.0 , беше издаден през 1987 г. Беше само за езика за програмиране C, но през същата година беше разширен за Език за програмиране C++ . По-късно е разработен за други езици за програмиране като Objective-C, Objective-C++, Fortran, Java , Ada, Go и др. Последната му версия има много подобрена реализация на езиците за програмиране.
Той е официален партньор на GNU OS; следователно той е приет като стандартен компилатор на системите, базирани на Linux.
numpy дневник
Компоненти на GCC
GCC е преносим инструмент и може да работи на много операционни системи. Освен това може да бъде пренесен към Windows с помощта на някои инструменти като Cygwin, MinGW и MinGW-W64 . Тъй като е ключов компонент на инструменталната верига на GNU, той съдържа следните компоненти за разработване на приложения и операционни системи:
GNU Compiler Collection (GCC): Това е компилаторен пакет за много езици, като C/C++ и Objective-C/C++.
GNU Make: Това е инструмент за автоматизация, който се използва за компилиране и изграждане на приложения.
GNU Binutils: Това е пакет, който съдържа бинарни помощни инструменти като линкер и асемблер .
GNU Debugger (GDB). Използва се за отстраняване на грешки в приложенията.
GNU Autotools: Това е система за изграждане, която съдържа някои помощни инструменти като Autoconf, Autoheader, Automake и Libtool.
GNU Bison: Това е генератор на анализатори като lex и yacc.
Процес на GCC компилатор
GCC компилира и прави изпълнима програма в следните четири стъпки:
Предварителна обработка: В тази стъпка препроцесорът на GNU (cpp.exe) създава междинен файл с изходния код. Препроцесорът включва заглавките (#include) и разширява макросите (#define). Помислете за командата по-долу:
cpp hello.c > hello.i
Горната команда ще създаде междинен файл „hello.i.“
Компилация: В тази стъпка предварително обработеният изходен код се компилира в код за асемблиране за конкретен процесор.
gcc -S hello.i
Горната команда ще създаде файл за сглобяване „hello.s.“ Опцията '-s' се използва, за да се укаже, че да се създаде асемблерният код, а не обектният код.
Сглобяване: Асемблерният код се преобразува в машинен код. Той ще създаде обектен файл „hello.o.“
as -o hello.o hello.s
Линкер: Линкерът (ld.exe) е последната стъпка от процеса на компилиране. Той свързва обектния код с кода на библиотеката и създава изпълним файл.
ld -o hello.exe hello.o
Горната команда ще създаде изпълним файл „hello.exe“.
Инсталиране на GCC на Linux
По подразбиране той идва с повечето Linux дистрибуции. Можем да го проверим, като изпълним командата по-долу:
gcc -version
Горната команда ще покаже инсталираната версия на инструмента GCC. Ако не е инсталиран, следвайте стъпките по-долу, за да го инсталирате:
Стъпка 1: Актуализирайте списъка с пакети.
заместване от низ в java
За да актуализирате списъка с пакети, изпълнете следната команда:
sudo apt update
Ще поиска системна администраторска парола, въведете паролата. Ще започне да актуализира системния пакет. Разгледайте следната снимка на изхода:
Стъпка 2: Инсталирайте пакета build-essential.
Той съдържа различни пакети като gcc, g++ и make utility. Изпълнете командата по-долу, за да го инсталирате:
sudo apt install build-essential
Горната команда ще инсталира необходимите пакети за помощната програма GCC. Сега можем да използваме помощната програма GCC в нашата машина. Разгледайте следната снимка на изхода:
Стъпка 3: Проверете инсталацията.
За да проверите инсталацията, изпълнете командата gcc -version, както следва:
gcc --version
Той ще покаже инсталираната версия на помощната програма GCC. За да покажете по-специфични подробности за версията, използвайте опцията '-v'. Помислете за резултата по-долу:
Тук успешно инсталирахме помощната програма GCC. Нека разберем как да го използваме. Ще създадем и изпълним някои c програми, използвайки GCC.
Стартирайте първата C програма от gcc
Създайте основен c програма 'Здравей свят!'. Създайте файл „hello.c“ и поставете кода по-долу в него:
#include int main() { printf('Hello, world! '); return 0; }
Сега компилирайте hello.c, както следва:
gcc hello.c
Ако стартираме директно hello.c, той ще изведе грешката. Направете го изпълним, изпълнимият файл по подразбиране за системата Linux е a.out. За да изпълните файла, изпълнете командата chmod, както следва:
chmod a+x a.out
Сега стартирайте програмата c като:
./a.out
Помислете за резултата по-долу:
GCC команда Примери
Някои полезни примери за команда gcc са следните:
По подразбиране командата gcc създава обектния файл като 'a.out .' Ако искате да промените името на изходния файл по подразбиране, използвайте '-O' опция.
Нека изпълним основната команда gcc:
gcc hello.c
Горната команда ще генерира обектния файл 'a.out.' За да посочите името на обектния файл, изпълнете командата, както следва:
gcc hello.c -o hello
Той ще генерира изходния файл „здравей“. Помислете за резултата по-долу:
За да активирате всички предупреждения в изхода, използвайте '-стена' опция с командата gcc. Нека създадем променлива в основната функция на hello.c. Разгледайте кода по-долу:
здравей.c:
#include int main() { int a; printf('Hello, world! '); return 0; }
Ако компилираме горния код с помощта на опцията -Wall. Ще хвърли предупрежденията. Изпълнете командата по-долу, за да компилирате файла:
gcc -wall hello.c
Горната команда ще покаже предупрежденията. Помислете за резултата по-долу:
Можем да произведем само поетапния резултат от процеса на компилиране.
Създайте изхода на предпроцесора
Можем да създадем само изхода за предварителна обработка, като използваме опцията „-E“. Помислете за командата по-долу:
gcc -E hello.c > hello.i
От горната команда, файл 'здравей. аз' който съдържа предварително обработен изход се генерира. Помислете за резултата по-долу:
Създайте кода за сглобяване
За да създадете асемблерния код, изпълнете командата с опцията '-S'. Помислете за командата по-долу:
gcc -S hello.c > hello.s
Горната команда ще генерира 'hello.s.' файл, който съдържа асемблерния код. Помислете за резултата по-долу:
Създайте компилирания код
латексов размер на текста
Можем да създадем само компилирания код, като използваме опцията '-C'. Помислете за командата по-долу:
gcc -C hello.c
Горната команда ще генерира файл „a.out“, който съдържа само машинния код или компилиран код. Помислете за резултата по-долу:
Създайте всички междинни файлове от процеса на компилиране
Можем да създадем всички междинни файлове от процеса на компилиране, като използваме опцията '-save-temp'. Помислете за резултата по-долу:
gcc -save-temps hello.c
Горната команда ще генерира всички междинни файлове, както и изпълними файлове наведнъж. Помислете за резултата по-долу:
Можем да покажем подробна информация за всяка стъпка, предприета от командата gcc. За да направите това, изпълнете командата с опцията '-v'.
gcc -W -v hello.c
Разгледайте следната снимка на изхода:
Обсъдихме някои най-полезни примери за командата gcc. Тъй като командата gcc улеснява с огромен брой опции, можете да заседнете навсякъде, докато я използвате. Нека да видим как сами да получите помощ от терминала.
GCC ръководство
Ако заседнете някъде, докато използвате командата gcc, можете да потърсите помощ от вашия терминал. За достъп до ръководството от командния ред изпълнете командата man, както следва:
man gcc
Горната команда ще покаже ръководството, което съдържа описание и списък на поддържаните опции с кратко описание. Разгледайте следната снимка на изхода:
можете да превъртите изхода, за да прочетете повече. Натиснете клавиша 'h' за помощ и q, за да излезете от ръководството и обратно към терминала.