Как установить c на линукс

Обновлено: 04.07.2024

Это краткое руководство объясняет, как компилировать и запускать программы на Си/Си++ в операционной системе GNU/Linux.

Если вы студент или новый пользователь Linux, который переходит с платформы Microsoft, то вам может быть интересно, как запускать программы на Си или Си++ в дистрибутиве Linux. Мы должны понимать, что компиляция и запуск кода на платформах Linux немного отличается от Windows.

Установка необходимых инструментов

Как вы, наверное, уже понимаете, для запуска кода нужно установить необходимые инструменты и компиляторы для работы. Ниже мы опишем как установить все инструменты разработки в Linux.

Для работы и тестирования у нас должен быть сервер с Linux. Лучший вариант - это VPS. В зависимости от географии проекта обычно выбирают две страны для серверов - VPS США и VPS России.

В этом кратком руководстве мы обсудим, как установить средства разработки в такие дистрибутивы Linux, как Arch Linux, CentOS, RHEL, Fedora, Debian, Ubuntu, openSUSE и др.

Эти средства разработки включают в себя все необходимые приложения, такие как компиляторы GNU GCC C/C++, make, отладчики, man-страницы и другие, которые необходимы для компиляции и сборки нового программного обеспечения и пакетов.

Инструменты разработчика могут быть установлены как по отдельности, так и все сразу. Мы собираемся установить все сразу, чтобы нам было намного проще работать.

Установка в Arch Linux

Для установки средств разработки в Arch Linux и его дистрибутивов, таких как Antergos, Manjaro Linux, просто запустите:

Вышеуказанная команда установит следующие пакеты в ваши системы на базе Arch:

  1. autoconf
  2. automake
  3. binutils
  4. bison
  5. fakeroot
  6. file
  7. findutils
  8. flex
  9. gawk
  10. gcc
  11. gettext
  12. grep
  13. groff
  14. gzip
  15. libtool
  16. m4
  17. make
  18. pacman
  19. patch
  20. pkg-config
  21. sed
  22. sudo
  23. texinfo
  24. util-linux
  25. which

Просто нажми ENTER, чтобы установить их все.


Если вы хотите установить пакет в определенную группу пакетов, просто введите его номер и нажмите ENTER, чтобы продолжить установку.

Установка средств разработки в RHEL, CentOS

Для установки средств разработки в Fedora, RHEL и его клонах, таких как CentOS, Scientific Linux, выполните следующие команды как пользователь root:

Вышеуказанная команда установит все необходимые инструменты разработчика, например:

  1. autoconf
  2. automake
  3. bison
  4. byacc
  5. cscope
  6. ctags
  7. diffstat
  8. doxygen
  9. elfutils
  10. flex
  11. gcc/gcc-c++/gcc-gfortran
  12. git
  13. indent
  14. intltool
  15. libtool
  16. patch
  17. patchutils
  18. rcs
  19. subversion
  20. swig


Установка инструментов разработки в Debian, Ubuntu и дистрибутивы

Для установки необходимых инструментов разработчика в системах на базе DEB, запустите:

Эта команда предоставит все необходимые пакеты для настройки среды разработки в Debian, Ubuntu и его дистрибутивов.

  1. binutils
  2. cpp
  3. gcc-5-locales
  4. g++-multilib
  5. g++-5-multilib
  6. gcc-5-doc
  7. gcc-multilib
  8. autoconf
  9. automake
  10. libtool
  11. flex
  12. bison
  13. gdb
  14. gcc-doc
  15. gcc-5-multilib
  16. and many.


Теперь у Вас есть необходимые средства разработки для создания программного обеспечения в Linux.

Скрипт Mangi

Если Вам не нравится метод установки средств разработки выше, есть также скрипт под названием "сценарий манги" (mangi), доступный для легкой настройки среды разработки в DEB-системах, таких как Ubuntu, Linux Mint и других производных Ubuntu.

После свежей установки Ubuntu возьмите этот скрипт из репозитория GitHub, сделайте его исполняемым и начните установку всех необходимых инструментов и пакетов для настройки полной среды разработки. Вам не нужно устанавливать инструменты один за другим.

Этот скрипт установит следующие среды разработки и инструменты на вашу систему Linux:

  1. Node.js
  2. NVM
  3. NPM
  4. Nodemon
  5. MongoDB
  6. Forever
  7. git
  8. grunt
  9. bower
  10. vim
  11. Maven
  12. Loopback
  13. curl
  14. python
  15. jre/jdk
  16. gimp
  17. zip unzip and rar tools
  18. filezilla
  19. tlp
  20. erlang
  21. xpad sticky notes
  22. cpu checker
  23. kvm acceleration
  24. Calibre Ebook Reader (I often use it to read programming books
  25. Dict – Ubuntu Dictionary Database and Client (CLI based)

Сначала установите следующее:

Скачайте скрипт манги, используя команду:

Извлеките загруженный архив:

Вышеуказанная команда распакует zip-файл в папку под названием mangi-script-master в вашей текущей рабочей директории. Перейдите в каталог и сделайте скрипт исполняемым, используя следующие команды:

Наконец, запустите скрипт с помощью команды:


Пожалуйста, имейте в виду, что этот скрипт не полностью автоматизирован. Вам необходимо ответить на ряд вопросов "Да/Нет" для установки всех инструментов разработки.

Установка инструментов разработки в openSUSE/SUSE

Для настройки среды разработки в openSUSE и SUSE enterprise выполните следующие команды от имени root пользователя:

Проверка установки

Теперь проверим, были ли установлены средства разработки или нет. Для этого запустите:


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

Настройка среды разработки

Скрипт под названием 'mangi' поможет вам настроить полное окружение в системах на базе Ubuntu.

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

Эти команды покажут путь установки и версию компилятора gcc.


Компиляция и запуск программ C, C++

Сначала посмотрим, как скомпилировать и запустить простую программу, написанную на языке Си.

Компиляция и запуск программ на C

Напишите свой код/программу в любимом редакторе CLI/GUI.

Я собираюсь написать свою программу на Си с помощью редактора nano.

Примечание. Вам необходимо использовать расширение .c для программ на Си или .cpp для программ на Си++.

Скопируйте/вставьте следующий код:


Нажмите Ctrl+O и Ctrl+X для сохранения и выхода из файла.

Чтобы скомпилировать программу, запустите:

Наконец, запустите программу с помощью команды:

Вы увидите вывод, как показано ниже:

Чтобы скомпилировать несколько исходных файлов (например, source1 и source2) в исполняемый файл, запустите:

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

Скомпилировать исходный код в инструкции ассемблера:

Скомпилировать исходный код без связывания:

Вышеприведенная команда создаст исполняемый файл под названием source.o.

Если ваша программа содержит математические функции:

За более подробной информацией обращайтесь к man-страницам (страницы руководства).

Компиляция и запуск программ на C++

Напишите вашу C++ программу в любом редакторе по вашему выбору и сохраните ее с расширением .cpp.

Пример простой C++ программы:

Чтобы скомпилировать эту программу на C++ в Linux, просто запустите:

Если ошибок не было, то можно запустить эту Си++ программу под Linux с помощью команды:

В качестве альтернативы мы можем скомпилировать приведенную выше программу на C++, используя команду "make", как показано ниже.

Вы заметили? Я не использовал расширение .cpp в вышеприведенной команде для компиляции программы. Нет необходимости использовать расширение для компиляции Си++ программ с помощью команды make.

Большинство программ в 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

H1BJ+aA10chuAAAAAElFTkSuQmCC

После завершения установки все необходимое для компиляции программ будет установлено. И вы сможете использовать компилятор. Рассмотрим версии и расположение файлов компилятора:

whereis gcc make

YAsEijQilh3P8XzVqal8hwFiAAAAAASUVORK5CYII=

mQ1aHDHAAAAAElFTkSuQmCC

yELAAAAAElFTkSuQmCC

Если необходима более новая версия компилятора, например, на данный момент последняя версия - 11, то можно использовать PPA разработчиков с тестовыми сборками. Для добавления PPA в систему выполните команды:

sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test && sudo apt update

kclq444AAAAASUVORK5CYII=

Далее установите сам компилятор:

sudo apt -y install gcc-snapshot && sudo apt -y install gcc-11g++-11

AaKdPs7la0w0AAAAAElFTkSuQmCC

Это не заменит ваш текущий компилятор на новый. В системе просто появятся 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

A0O2YdWJaOJ9AAAAAElFTkSuQmCC

Готово, теперь вы можете проверить версию gcc-6:

RNPWXVpTrs4AAAAASUVORK5CYII=

Установка GCC в Ubuntu завершена, и можно переходить к сборке программ. Для удаления компилятора достаточно удалить пакет build-essential при помощи команды:

sudo apt purge -y build-essential && sudo apt-y autoremove

Использование GCC в Ubuntu

Рассмотрим пример компиляции минимальной программы hello.c для освоения работы с gcc. Вот код программы, откройте любой текстовый редактор и сохраните его в файле с названием hello.c:

dfR8yQ+0dotHBObQTDvXB8xjDEugtQ+d0xm7YVKjmo3Zd614kOdRaSP9GeHaXNE6mhZRoeaw6Zhl7bddbxHHUYVbZS7oWOqhWa6BMjZv9rIJTjcVJJO45BHdn1a5x7aKQvGKbfU76b6CR6y+MMJCNqQRzcSvl55Itht05ef0fdfRpREv47uy31Of9mWIoAAAAASUVORK5CYII=

Теперь запустим сборку программы:

Когда сборка программы будет завершена, на выходе появится файл с названием a.out. a.out –это имя исполняемого файла, которое по умолчанию, сгенерировано при помощи gcc. Далее можно запустить данный файл:

h0mzJPtkAAAAASUVORK5CYII=

Готово, компилятор прекрасно работает в системе, и теперь можно писать свои программы или собирать чужие.

Выводы

В этой статье мы рассмотрели, как установить gcc в Ubuntu 20.04, это один из самых популярных компиляторов для этой операционной системы. И устанавливается он очень просто, если у вас остались вопросы, спрашивайте в комментариях!

На завершение видео с демонстрацией самого процесса:

Давайте начистоту, мало кто использует отладчик GDB на Linux в консольном варианте. Но что, если добавить в него красивый интерфейс? Под катом вы найдёте пошаговую инструкцию отладки кода С/С++ на Linux в Visual Studio Code.




Передаю слово автору.

Относительно недавно я переехал на Linux. Разрабатывать на Windows, конечно, удобнее и приятнее, но и здесь я нашел эффективный способ легко и быстро отлаживать код на С/С++, не прибегая к таким методам как «printf-стайл отладки» и так далее.

Итак приступим. Писать в sublime (или gedit/kate/emacs ), а запускать в терминале — так себе решение, ошибку при работе с динамическим распределением памяти вряд ли найдёшь с первого раза. А если проект трудоёмкий? У меня есть более удобное решение. Да и ещё поддержка Git в редакторе, одни плюсы.

Сегодня мы поговорим про Visual Studio Code.

Установка

Ubuntu/Debian

  1. Качаем версию пакета VS Code с расширением .deb
  2. Переходим в папку, куда скачался пакет (cd

/Загрузки или cd

Расширения для С/С++

Чтобы VS Code полностью сопровождал нас при работе с файлами С/С++, нужно установить расширение «cpptools». Также полезным будет поставить один из наборов сниппетов.


Настоятельно рекомендую включить автосохранение редактируемых файлов, это поможет нам в дальнейшем.


Идём дальше. Открываем любую папку (новую или нет, неважно).


У меня в этой папке уже есть пара файлов для работы с C/C++. Вы можете скопировать одну из своих наработок сюда или создать новый файл.


Осталось всего ничего. Настроить компиляцию в одну клавишу и научиться отлаживать без printf .

Шаг 1. Открываем файл .c/.cpp, который (обязательно) лежит в вашей папке.

Шаг 2. Нажимаем Ctrl+Shift+B. VS Code вам мягко намекнет, что он не знает как собирать ваш проект.



Шаг 3. Поэтому дальше настраиваем задачу сборки: выбираем «Настроить задачу сборки» -> «Others».

Шаг 4. Прописываем конфигурацию в соответствии с образцом. По сути мы пишем скрипт для консоли, так что всем кто имел дело с ней будет понятно дальнейшее. Прошу заметить, что для сборки исходников в системе должен стоять сам компилятор (gcc или другой, отличаться будет только значение поля command ). Поэтому для компиляции .cpp, понадобится в поле command указать g++ или c++ , а для .c gcc .

Шаг 5. В args прописываем аргументы, которые будут переданы на вход вашему компилятору. Напоминаю, что порядок должен быть примерно таким: -g, <имя файла> .

Внимание: Если в вашей программе используется несколько файлов с исходным кодом, то укажите их в разных аргументах через запятую. Также обязательным является ключ -g (а лучше даже -g3 ). Иначе вы не сможете отладить программу.

Если в проекте для сборки вы используете makefile , то в поле command введите make , а в качестве аргумента передайте директиву для сборки.



Шаг 6. Далее возвращаемся обратно к нашему исходнику. И нажимаем F5 и выбираем C++.


Шаг 7. Осталось только написать путь к файлу программы. По умолчанию это $/a.out , но я в своем файле сборки указал флаг -o и переименовал файл скомпилированной программы, поэтому у меня путь до программы: $/main .



Шаг 8. Всё, больше нам не нужно ничего для начала использования всех благ VS Code. Переходим к основному проекту.

Отладка

Для начала скомпилируем программу (нет, нет, убери терминал, теперь это делается по нажатию Ctrl+Shift+B).


Как вы видите в проводнике появился main , значит все в порядке и сборка прошла без ошибок. У меня не слишком большая программа, но выполняется она моментально. Одним словом, провал чистой воды, потому что отладка идет в отдельном терминале, который закрывается после того, как программа дошла в main() до "return 0;" .



Пришло время для брейкпоинтов. Выберем строчку с "return 0;" и нажимаем F9.



Строчка, помеченная красной точкой слева — место, где остановится программа, при выполнении.

Далее нажимаем F5.


Как я и сказал, программа остановила выполнение. Обратите внимание на окно с локальными переменными.


Удобненько. Также при остановке можно наводить мышкой на переменные и структуры в коде и смотреть их значения.



Также, если на каком-то этапе выполнения вам нужно посмотреть пошаговое выполнение той или иной операции, например в цикле, то поставьте брейкпоинт перед ней и нажмите F10 для выполнения текущей строчки без захода в подпрограмму и F11 с заходом.

Также есть случаи, когда считать выражение очень муторно вручную, но для отладки вам нужно знать, например, значение суммы трех элементов массива, или значение большого логического выражения. Для этого существуют контрольные значения. Все это и многое другое могут показать вам Контрольные значения (или «watch»).


  1. Для каждой папки вам нужно отдельно настроить файлы сборки и путь к программе.
  2. VS Code не решит ваших проблем, но поможет быстрее с ними разобраться. Причем в разы.
  3. После каждого изменения программы, ее нужно компилировать заново, нажимая Ctrl+Shift+B.

Об авторе


После установки необходимых инструментов разработки проверьте их с помощью одной из следующих команд:

Эти команды отобразят путь установки и версию компилятора gcc.


Компиляция и запуск программ на C, C ++ на Linux

Во-первых, давайте посмотрим, как скомпилировать и запустить простую программу, написанную на языке Си.

Напишите свой код / программу в вашем любимом редакторе CLI / GUI.

Я собираюсь написать свою программу на C, используя редактор nano.

Примечание: вам нужно использовать расширение .c для программ на C или .cpp для программ на C ++.

Нажмите Ctrl + O и Ctrl + X, чтобы сохранить и выйти из файла. Если в вашем коде / программе есть какие-либо синтаксические или семантические ошибки, они будут отображены.

Если ошибки нет, компилятор успешно сгенерирует исполняемый файл с именем itisgood в текущем рабочем каталоге.

Наконец, выполните программу, используя команду:

Вы увидите вывод, как показано ниже:

Чтобы скомпилировать несколько исходных файлов (например, source1 и source2) в исполняемый файл, запустите:

Чтобы разрешить предупреждения, отладьте символы в выводе:

Чтобы скомпилировать исходный код в инструкции ассемблера:

Чтобы скомпилировать исходный код без ссылок:

Приведенная выше команда создаст исполняемый файл с именем source.o.

Если ваша программа содержит математические функции:

Для более подробной информации обратитесь к справочным страницам.

Компиляция и запуск программ C ++

Напишите свою программу на C ++ в любом редакторе по вашему выбору и сохраните ее с расширением .cpp.

Вот простая программа на C ++.

Чтобы скомпилировать эту программу C ++ в Linux, просто запустите:

Если ошибок не было, вы можете запустить эту программу C ++ под Linux, используя команду:

Вы увидите вывод, как показано ниже:

В качестве альтернативы, мы можем скомпилировать вышеуказанную программу на C ++, используя команду «make», как показано ниже.

Я не использовал расширение .cpp в приведенной выше команде для компиляции программы.

Нет необходимости использовать расширение для компиляции программ на C ++ с помощью команды make.

Как установить компилятор GCC в Ubuntu 18.04

Коллекция компиляторов GNU (GCC) - это набор компиляторов и библиотек для языков программирования C, C ++, Objective-C, Fortran, Ada, Go и D. Многие проекты с открытым исходным кодом, включая инструменты GNU и ядро ​​Linux, скомпилированы с помощью GCC.

Те же инструкции применимы для Ubuntu 16.04 и любого дистрибутива на основе Ubuntu, включая Kubuntu, Linux Mint и Elementary OS.

Прежде чем вы приступите

Чтобы добавлять новые репозитории и устанавливать пакеты в вашей системе Ubuntu, вы должны войти в систему как пользователь root или пользователь с привилегиями sudo .

Установка GCC на Ubuntu

Репозитории Ubuntu по умолчанию содержат метапакет с именем, build-essential который содержит компилятор GCC и множество библиотек и других утилит, необходимых для компиляции программного обеспечения.

Выполните следующие шаги, чтобы установить компилятор GCC Ubuntu 18.04:

Начните с обновления списка пакетов:

Установите build-essential пакет, набрав:


Команда устанавливает кучу новых пакетов , включая gcc , g++ и make .

Вы также можете установить справочные страницы об использовании GNU / Linux для разработки:

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

Версия GCC по умолчанию, доступная в репозиториях Ubuntu 18.04 7.4.0 :


Вот и все. GCC теперь установлен в вашей системе, и вы можете начать его использовать.

Компиляция примера Hello World

Скомпилировать базовую программу на C или C ++ с помощью GCC довольно просто. Откройте текстовый редактор и создайте следующий файл:

Сохраните файл и скомпилируйте его в исполняемый файл с помощью следующей команды:


Это создаст двоичный файл с именем hello в том же каталоге, где вы запускаете команду.

Запустите hello программу с помощью:


Программа должна напечатать:


Установка нескольких версий GCC

В этом разделе приведены инструкции по установке и использованию нескольких версий GCC в Ubuntu 18.04. Новые версии компилятора GCC включают поддержку новых языков, лучшую производительность и расширенные функции.

На момент написания этой статьи репозитории Ubuntu по умолчанию включают несколько версий GCC, от 5.x.x до 8.x.x . Последняя версия GCC, 9.1.0 доступная в PPA Ubuntu Toolchain.

В следующем примере мы установим последние три версии GCC и G ++.

Сначала добавьте ubuntu-toolchain-r/test PPA в вашу систему с помощью:


Установите нужные версии GCC и G ++, набрав:


Приведенные ниже команды настраивают альтернативу для каждой версии и связывают с ней приоритет. Версия по умолчанию - это версия с наивысшим приоритетом, в нашем случае это так gcc-9 .


Позже, если вы захотите изменить версию по умолчанию, используйте update-alternatives команду:


Вам будет представлен список всех установленных версий GCC в вашей системе Ubuntu. Введите номер версии, которую вы хотите использовать по умолчанию, и нажмите Enter .

Команда создаст символические ссылки на определенные версии GCC и G ++.

Вывод

Вы успешно установили GCC на свой Ubuntu 18.04. Теперь вы можете посетить официальную страницу документации GCC и узнать, как использовать GCC и G ++ для компиляции программ на C и C ++

Читайте также: