Компиляция си кода линукс

Обучение С++. Что если начать на Linux?

Накипело!

В нынешней системе школьного образования заточка под операционную систему Microsoft поражает: за очень редким исключением вы сможете где-нибудь увидеть что-то вроде Edubuntu или русский ALT Linux, но остальном это Windows. По моему мнению, давно пора еще в школах знакомить детей с другим взглядом на то, каким должен быть интерфейс между человеком и железом, а не искать общих путей. Может быть именно такой сравнительно-аналитический взгляд на вещи позволит поднять крайне низкий уровень компьютерной грамотности у выпускников школ, которые даже не могут оформить текст в Word или составить добротную презентацию в PowerPoint.

Искренне удивляет, что в школах считается сверхсложным и даже мистическим составлять двумерные массивы в том же Pascal’e, который к слову, тоже давным давно пора заменить на более гибкий и удобный Python или JavaScript. Уважаемые преподаватели, какой должна быть мотивация ученика, если его учат на мертвом языке? Мы же для закрепления правил грамматики не учим сперва славянский, а потом русский и другие. Так какого черта?!

Учитывая модность профессии программиста и определенную романтику в головах молодых людей, навеянную голливудским кино, люди поступают в ВУЗы и сталкиются с рядом сложностей: их голова начинает резко расширяться, что неминуемо приводит сперва к усталости, а затем и к разочарованию в своем выборе. Факт остается фактом: если вы связываете себя с профессией, которая требует постоянного самосовершенствования, то начинайте это делать еще до поступления. Есть множество материалов, который помогут вам быть более подготовленными в процессе учебы и позволит найти работу по специальности уже к 3-4 курсу обучения. Шевелитесь!

На фоне таких рассуждений ко мне пришла сделать небольшой туториал по тому, как написать, скомпилировать и запустить программу на C++ в Linux без специальных средств (IDE). Такой подход сможет познакомить начинающего программиста с процессом разработки в наиболее тривиальном виде, а также с принципиально новой для него операционной системой Linux. В конце своего хабрапоста я напишу список литературы и полезные ссылки.

Начнем с того, что нам понадобится:
-Дистрибутив Linux (возьмем Ubuntu);
-Установленный компилятор g++;
-Обычный текстовый редактор (gedit);
-Терминал;

Источник

🐧 Как скомпилировать и запустить программы на C, C++ в Linux

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

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

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

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

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

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

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

Читайте также:  Отключение приложений при запуске windows 10

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Надеюсь все было достаточно просто и понятно! 🙂

Добавить комментарий Отменить ответ

• Свежие записи

• Категории

• itsecforu.ru

• Страны посетителей

IT is good

Источник

LibreBay

Статьи про ОС Ubuntu. Языки программирования Си и C++.
Инструменты разработки и многое другое.

понедельник, 5 декабря 2016 г.

Как скомпилировать программу на C/C++ в Ubuntu

Помню, когда я только начинал программировать, у меня возник вопрос: «Как скомпилировать программу на C в Ubuntu?» Для новичков это не легкая задача, как может показаться на первый взгляд.

Мой путь изучения C начался с бестселлера «Брайан Керниган, Деннис Ритчи, Язык программирования C, 2-е издание». Там рассказывается как скомпилировать программу в операционной системе Unix, но этот способ не работает в Linux. Авторы книги выкрутились, написав следующее:

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

Текстовый редактор gedit

Для написания первых программ подойдет обычный, используемый по умолчанию в Ubuntu, текстовый редактор с подсветкой синтаксиса — gedit.

Рис. 1. Запуск текстового редактора.

Первой программой по традиции является «Hello, World!», выводящее приветствие на экран:

Печатаем или копируем текст программы в gedit и сохраняем в файл Hello.c , например, на рабочий стол. Не самое лучше место для сохранения, но это позволит рассмотреть случай, когда в имени директории содержится пробел.

Рис. 2. Программа hello, World.

Компиляция программы на C

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

Далее в терминале нам необходимо перейти в директорию, куда сохранили файл с текстом программы. Перемещение выполняется командой cd (англ. change directory — изменить каталог). Чтобы воспользоваться командой в начале пишется cd , затем через пробел путь , куда нужно перейти.

Для перехода на рабочий стол, команда будет следующей:

Обратите внимание на символ обратной косой черты \ в имени директории Рабочий стол . Обратная косая экранирует пробел, и сообщает команде cd , что пробел и следующие за ним символы являются частью имени. Символ

в начале пути обозначает путь до домашней папки пользователя.

Для просмотра содержимого директории применяется команда ls (сокращение от англ. list).

Читайте также:  Видеозахват для mac os
Рис. 3. Работа в терминале.

Команда компиляции для программы на C выглядит следующим образом:

где:

  • gcc — компилятор для языка программирования C;
  • -Wall — ключ вывода всех предупреждений компилятора;
  • -o hello — с помощью ключа -o указывается имя выходного файла;
  • hello.c — имя нашего исходного файла, который компилируем.

Выполнив команду ls , увидим, что появилась наша скомпилированная программа hello , отмеченная цветом, обозначающим исполняемые программы.

В завершение запустим hello , вводом имени программы с префиксом ./ :

Префикс ./ сообщает терминалу о необходимости выполнить программу с заданным именем в текущем каталоге. (Точка — это условное название текущего каталога.)

Рис. 4. Работа в терминале, продолжение.

Компиляция программы на С++

Программы на C++ компилируются аналогично, как и программы на C. «Hello, World!» на C++ можно написать так:

Сохраняем текст программы в файл под именем hello2.cpp . Таким образом, команда компилирования будет иметь вид:

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

Заключение

Данный способ позволяет скомпилировать программу лишь из одного файла с исходным кодом. Но этого вполне достаточно, чтобы начать изучение языков программирования C/C++ по книгам или по статьям в интернете.

Более подробно об программировании в Ubuntu или в любом другом дистрибутиве Linux можно прочитать в книгах:

  • Иванов Н. Н. — Программирование в Linux. Самоучитель. — 2-е издание;
  • Нейл Метьэ, Ричард Стоунс — Основы программирования в Linux: Пер. с англ. — 4-е издание;
  • Колисниченко Д. Н. — Разработка Linux-приложений.

Источник

С/С++ на Linux в Visual Studio Code для начинающих

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

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

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

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

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

Установка

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

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

/Downloads)
Пишем, где (имя пакета).deb — название файла, который вы только что скачали:

OpenSUSE/SLE Based distrs

Обновим пакеты и установим VS Code:

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

Чтобы 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.

Полезные шорткаты можно посмотреть здесь.

Источник

Читайте также:  Bluetooth стандартные драйверы windows
Оцените статью