Linux build cpp file

LibreBay

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

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

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

ubuntu terminal

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

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

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

Побуду специалистом 🙂 и расскажу в данной статье, как скомпилировать первые программы на C и заодно на C++ в терминале Ubuntu.

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

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

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

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

#include int main(int argc, char **argv)

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

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

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

Теперь запускаем терминал, можно через Dash, а можно с помощью горячих клавиш + + . Здесь в начале установим инструменты сборки, куда входят необходимые компиляторы gcc для языка C и g++ для языка C++:

sudo apt install build-essential

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

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

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

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

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

Работа в терминале
Рис. 3. Работа в терминале.

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

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

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

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

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

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

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

#include int main(int argc, char **argv)

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

g++ -Wall -o hello2 hello2.cpp

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

Заключение

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

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

Источник

How to Compile a C++ file in Linux

In programming languages, writing code is the most basic skill in creating programs. There exist numerous languages have existed/evolved over time. Out of these languages, C++ is no doubt extremely commonly used in the world of programming. Unlike other languages, such as HTML and CSS as C++ must be compiled manually. The compilation takes the human-written code and turns it into a form that can be read and executed by the system.

In this article, knowledge will be provided on how you can compile a C++ file on your Linux operating system.

How to Compile a C++ File Linux?

There exist various methods through which a C++ file can be compiled and executed on the Linux operating system. As an example, we use the following C++ file in this article:

Now, let’s head over to the methods to compile the C++ file on Linux.

Method 1: Use the G++ Compiler

The “G++” compiler is the most commonly used compiler for both C and C++ files due to its simplicity. Mostly this compiler comes built into the Linux operating system, but if it is not present on your system, it can simply be installed using the command below:

Once the compiler is installed on your system, you can use this method, simply execute the command that is shown below:

The command above uses the “G++” keyword to compile the file whose name is mentioned at the end of the command, which is the “sample.cpp” file. This creates a compiled file with the name “a.out”. This compiled file can then be executed as shown below:

In the case that you want to compile the file with a different name than “a.out”, you can use the “-o” option as demonstrated below:

$ g++ -o compiled_file sample.cpp

Through this simple method, the C++ file can be easily compiled.

Читайте также:  Unzip on linux examples

Method 2: Using the GCC Compiler

Much like the “G++” compiler that was demonstrated in the previous section, GCC is also another compiler, but this compiler is utilized for both C and C++ programs. If this compiler does not exist on your system by default, you can simply install it with the command shown below:

After its installation, you can utilize it by using the keyword “GCC” along with the name of the C++ file which in this case is the “sample.cpp” file. Furthermore, this compiler executes the “-lstdc++” option. This option signifies that the compiler will search the C++ library for its compilation.

The first command below compiles the program, and the “GCC” creates an executable file named “./a.out”. The second command executes the “./a.out” file:

$ gcc sample.cpp -lstdc++ $ ./a.out

Here you go! You have learned to compile a C++ file using the “GCC” and “G++” compilers.

These were the two most common methods that are used to compile a C++ file in Linux.

Conclusion

In Linux, the “GCC” and “G++” compilers can be used to compile a C++ program. The “G++” compiler takes the name of the file to be compiled, whereas the “GCC” compiler requires an additional option, “lstdc++” with the file name. This post has given a detailed explanation of each of these methods to compile a C++ program on Linux.

TUTORIALS ON LINUX, PROGRAMMING & TECHNOLOGY

Источник

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

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

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

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

Читайте также:  What is udev linux

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

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

Поехали!

1. Установка Linux и необходимого софта.

Скачиваем с официального сайта ubuntu.ru образ дистрибутива Linux Ubuntu. Хотелось бы также добавить, что не рекомендую использовать Wubi. Делаем нормальную установку либо на наш жесткий диск, либо в виртуальной машине. Записываем с помощью Nero или ImgBurn образ на диск. Перезагружаемся и заходим в BIOS, где нам нужно выставить приоритет загрузки с CD/DVD — привода. Сохраняем настройки и выходим. Загружаемся с диска и устанавливаем операционную систему. (Более подробная информация будет в ссылке ниже). Текстовый редактор, терминал у нас есть по умолчанию. Для того, чтобы установить компилятор g++ открываем терминал с помощью комбинации alt+ctrl+T и вводим: sudo apt-get install g++ . Нас попросят ввести пароль, вводим, нажимаем Enter. Готово.

2. Создание cpp-файла.

Открываем домашнюю папку в файловом менеджере Nautilus и параллельно открываем терминал alt+ctrl+t. В нем пишем команду touch helloworld.cpp. Команда touch создаст файл с нужным вам названием. Теперь можно свернуть терминал и сфокусироваться на Nautilus’e. Открываем наш файл и пишем самый популярный в мире код:

#include using namespace std; int main()
3.Компиляция и запуск.

Снова открываем терминал и вызываем наш компилятор командой g++ -lm -o output helloworld.cpp . g++ — собственно наш компилятор, а -lm и -o это параметры-ключи, с которыми мы его запускаем. output — имея файла вывода, куда помещается результат нашей компиляции и следом за ним имя нашего cpp-файла. Нажимаем enter, если программа верна, то никаких сообщений не будет. Теперь, чтобы запустить программу введем в терминале следующее: ./output и нажмем enter. На экране выведен результат «Hello world!».
Вот вы и написали свою первую программу на C++ для Linux! Поздравляю вас и желаю успехов в расностороннем и качественном обучении. Ваша компетентность в ваших руках, помните об этом.

P.S. Если хотя бы один школьник проделает то, что я написал, буду считать, что моя миссия выполнена. Всем добра!
P.S.S. Ссылки:
firststeps.ru — полезные материалы в разделе Linux, связанные с процессом компиляции и компоновки программ, а также созданием библиотек на языке C++.
startubuntu.ru — отличный ресурс для начинающих линуксоидов.
help.ubuntu.ru/wiki — отличная wiki для Ubuntu.

Источник

Оцените статью
Adblock
detector