Большинство программ в Linux написаны на C или С++, и если вы хотите собирать их из исходников, то вам обязательно понадобиться компилятор, также он понадобиться, если захотите начать писать свои программы на одном из этих языков.
Существует два основных компилятора в Linux - это GCC и Clang, они похожи по своим возможностям, но так сложилось, что первый считается стандартом для Ubuntu. GCC расшифровывается как GNU Compiler Collection. В этой статье мы рассмотрим, как выполняется установка GCC в Ubuntu, а также рассмотрим базовые приемы работы с этим набором программ в терминале.
Содержание статьи
Набор компиляторов GCC
Все программы представляют собой набор машинных команд, которые выполняются процессором. Эти команды - последовательность бит. Но писать программы наборами бит очень неудобно, поэтому были придуманы языки программирования высокого уровня. Код на языке программирования хорошо читаем и понятен для человека, а когда из него нужно сделать программу, компилятор ubuntu преобразует все в машинные команды.
В базовую поставку компилятора входят такие программы:
- libc6-dev - заголовочные файлы стандартной библиотеки Си;
- libstdc++6-dev - заголовочные файлы стандартной библиотеки С++;
- gcc - компилятор языка программирования Си;
- g++ - компилятор языка программирования C++;
- make - утилита для организации сборки нескольких файлов;
- dpkg-dev - инструменты сборки пакетов deb.
Все эти пакеты являются зависимостями пакета build-essential, поэтому для установки всего необходимого достаточно установить этот пакет.
Установка GCC в Ubuntu
Если вас устраивает текущая версия GCC, которая есть в официальных репозиториях дистрибутива, то вам достаточно установить пакет build-essential. Для этого выполните команду:
sudo apt -y install build-essential
После завершения установки все необходимое для компиляции программ будет установлено. И вы сможете использовать компилятор. Рассмотрим версии и расположение файлов компилятора:
whereis gcc make
gcc -v
make -v
Если необходима более новая версия компилятора, например, на данный момент последняя версия - 11, то можно использовать PPA разработчиков с тестовыми сборками. Для добавления PPA в систему выполните команды:
sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test && sudo apt update
Далее установите сам компилятор:
sudo apt -y install gcc-snapshot && sudo apt -y install gcc-11g++-11
Это не заменит ваш текущий компилятор на новый. В системе просто появятся 2 версии компиляторов gcc-11 и g++11, которые вы можете использовать для своих программ. Это лучший вариант на данный момент, но если вы хотите все же сделать gcc-9 компилятором по умолчанию, выполните:
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-9 60 --slave /usr/bin/g++ g++ /usr/bin/g++-9
Готово, теперь вы можете проверить версию gcc-6:
gcc-9 -v
Установка GCC в Ubuntu завершена, и можно переходить к сборке программ. Для удаления компилятора достаточно удалить пакет build-essential при помощи команды:
sudo apt purge -y build-essential && sudo apt-y autoremove
Использование GCC в Ubuntu
Рассмотрим пример компиляции минимальной программы hello.c для освоения работы с gcc. Вот код программы, откройте любой текстовый редактор и сохраните его в файле с названием hello.c:
Теперь запустим сборку программы:
gcc hello.c
Когда сборка программы будет завершена, на выходе появится файл с названием a.out. a.out –это имя исполняемого файла, которое по умолчанию, сгенерировано при помощи gcc. Далее можно запустить данный файл:
./a.out
Готово, компилятор прекрасно работает в системе, и теперь можно писать свои программы или собирать чужие.
Выводы
В этой статье мы рассмотрели, как установить gcc в Ubuntu 20.04, это один из самых популярных компиляторов для этой операционной системы. И устанавливается он очень просто, если у вас остались вопросы, спрашивайте в комментариях!
На завершение видео с демонстрацией самого процесса:
файлы с++, в которых нужно подключать библиотеки (math.h и тд) просто так не скомпилируешь. еще нужно прописывать библиотеки в терминал. может кто написать название библиотек и заголовочных файлов? а то сам как то найти не могу
Спасибо
А есть русификатор для компилятора? Чтобы текст ошибок, мануал были на русском
Спасибо большое!
Поставил в windows 10 плагин ubuntu. Через команду sudo apt install gcc не устанавливается. А если потыркать команды, которые есть тут, то компилятор поставится))
Подскажите, в чем может быть ошибка?
Не могу файл скомпилировать:
#include
int main(void)
{
printf("hi\n");
return 0;
}
Выполняю команду в терминале: gcc -o inform inform.c
(при выполнении "gcc inform.c" вывод тот же)
Выводится сообщение:
/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/crt1.o: In function `_start':
(.text+0x20): undefined reference to `main'
collect2: error: ld returned 1 exit status
Почему после #include ничего нет?