Поиск по сайту:

Установите компилятор C, C++ и инструменты разработки (необходимые для сборки) в Debian/Ubuntu.


Большинству системных администраторов и инженеров Linux необходимы базовые знания программирования, которые помогут им в повседневных задачах. Если они хотят сделать еще один шаг вперед в области разработки (в качестве программистов ядра или приложений), то лучше всего начать с C или C++.

Читайте также: установите C, C++ и инструменты разработки в RHEL/CentOS/Fedora

В этой статье мы объясним, как установить компиляторы C и C++, а также их Инструменты разработки (build-essential). ) связанные пакеты, такие как make, libc-dev, dpkg-dev и т. д. в Debian, а также их производные, такие как Ubuntu и Linux Mint.

Программное обеспечение build-essential содержит информационный список программного обеспечения, которое считается важным для сборки пакетов Debian, включая компилятор gcc, make и другие необходимые инструменты.

Что такое компилятор?

Проще говоря, компилятор — это программа, которая обрабатывает инструкции, написанные на языке программирования, и создает двоичный файл, который процессор машины может понять и выполнить.

В дистрибутивах на основе Debian наиболее известными компиляторами C и C++ являются gcc и g++ соответственно. Обе программы были разработаны и до сих пор поддерживаются Фондом свободного программного обеспечения в рамках проекта GNU.

Установка компилятора C, C++ и средств разработки (обязательно при сборке)

Если в вашей системе по умолчанию не установлен пакет build-essential, вы можете установить последнюю доступную версию из репозиториев дистрибутива по умолчанию следующим образом:

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

Теперь мы готовы начать вводить код C или C++… или почти. Мы собираемся показать вам еще один инструмент, который расширит ваш набор инструментов разработки.

Ускорение компиляции C и C++

Если вы знаете, что вам нужно скомпилировать программу, внести изменения, а затем снова перекомпилировать, здорово иметь такой инструмент, как ccache, который, как вы, вероятно, догадались по его названию, представляет собой кеш компилятора.

Он ускоряет перекомпиляцию, кэшируя предыдущие компиляции и определяя, когда та же компиляция выполняется снова. Помимо C и C++, он также поддерживает Objective-C и Objective-C++. Единственные ограничения:

  1. Поддерживается только кэширование компиляции одного файла C/C++/Objective-C/Objective-C++. Для других типов компиляции (многофайловая компиляция, компоновка и т. д.) процесс в конечном итоге будет запускать настоящий компилятор.
  2. Некоторые флаги компилятора могут не поддерживаться. Если такой флаг обнаружен, ccache автоматически вернется к запуску настоящего компилятора.

Давайте установим этот инструмент:

aptitude install ccache

В следующем разделе мы увидим несколько примеров компиляции кода C и C++ с использованием ccache и без него.

Тестирование C и C++ с помощью примера программы

Давайте воспользуемся классическим примером очень простой программы на языке C, которая складывает два числа. Откройте свой любимый текстовый редактор и введите следующий код, затем сохраните его как 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;
}

Чтобы скомпилировать приведенный выше код в исполняемый файл с именем sum в текущем рабочем каталоге, используйте ключ -o с gcc:

gcc sum.c -o sum

Если вы хотите воспользоваться преимуществами ccache, просто добавьте к приведенной выше команде ccache, как показано ниже:

ccache gcc sum.c -o sum

Затем запустите бинарный файл:

./sum

Хотя этот базовый пример не позволяет нам увидеть всю мощь ccache, при работе с более крупными программами вы быстро поймете, насколько это отличный инструмент. То же самое относится и к программам на C++.

Краткое содержание

В этом руководстве мы показали, как установить и использовать компиляторы GNU для C и C++ в Debian и его производных. Кроме того, мы объяснили, как использовать кеш компилятора для ускорения перекомпиляции одного и того же кода. Хотя вы можете обратиться к онлайн-страницам руководства по gcc и g++ за дополнительными опциями и примерами, не стесняйтесь напишите нам, используя форму ниже, если у вас есть какие-либо вопросы или комментарии.