- Как запустить скомпилированный файл linux
- 🐧 Как скомпилировать и запустить программы на C, C++ в Linux
- Настройка среды разработки
- Компиляция и запуск программ на C, C ++ на Linux
- Напишите свой код / программу в вашем любимом редакторе CLI / GUI.
- Компиляция и запуск программ C ++
- You may also like
- 📜 Чтение файла построчно на Bash
- 📧 В чем разница между IMAP и POP3
- ✔️ Как управлять контейнерами LXD от имени обычного.
- 📜 Руководство для начинающих по созданию первого пакета.
- Феноменальная популярность электроники Xiaomi: основные причины
- 📜 Получение вчерашней даты в Bash: Практическое руководство
- Использование специальных гелей при мышечных болях
- 📦 Как расширить/увеличить файловую систему VxFS на Linux
- Услуги по размещению серверного оборудования в ЦОД
- Для чего выполняется ИТ консалтинг на предприятиях?
- Leave a Comment Cancel Reply
- • Свежие записи
- • Категории
- • Теги
- • itsecforu.ru
- • Страны посетителей
- IT is good
- Запуск скомпилированного файла в ubuntu
- 2 ответа 2
- Как запустить скомпилированную программу в Linux ( Ubuntu ) без терминала?
Как запустить скомпилированный файл linux
В прошлой теме было рассмотрено создание первой программы на Windows. Теперь рассмотрим создание первой программы на Linux, в частности, в среде Ubuntu 16.04. На Linux также популярным компилятор для создания программ является g++. Поэтому в данном случае также будем использовать этот компилятор.
Как правило, многие дистрибутивы Linux, в том числе и Ubuntu, уже по умолчанию содержат установленный компилятор g++, который мы сразу же можем использовать. Но даже если вдруг он не установлен, то его можно доустановить в терминале через команду:
В остальном, если мы будем использовать для компиляции компилятор g++, все будет аналогично созданию программы на Windows.
Определим в файловой системе каталог для исходных файлов с кодом на С++ и создадим в нем новый файл hello.cpp со следующим кодом:
#include // подключаем заголовочный файл iostream int main() // определяем функцию main < // начало функции std::cout // конец функции
И это тот же код, что был в случае с Windows, потому что программы на С++ на уровне исходного кода в большей степени обладают переносимостью.
Для вывода строки на консоль необходимо подключить нужный функционал. Для этого в начале файла идет строка
Данная строка представляет директиву препроцессора, которая позволяет подключить библиотеку iostream. Эта библиотека нужна для вывода строки на консоль.
Далее идет определение функции main . Функция main должна присутствовать в любой программе на С++, с нее собственно и начинается выполнение приложения.
Функция main состоит из четырех элементов:
- Тип возвращаемого значения . В данном случае это тип int . Этот тип указывает, что функция должна возвращать целое число.
- Имя функции . В данном случае функция называется main.
- Список параметров . После имени функции в скобках идет список параметров. Но в данном случае скобки пустые, то есть функция main не принимает параметров.
- Тело функции . После списка параметров в фигурных скобках идет тело функции. Здесь и определяются собственно те действия, которые выполняет функция main.
В функции осуществляем выход из функции с помощью оператора return . Так как функция должна возвращать целое число, то после return указывается число 0. Ноль используется в качестве индикатора успешного завершения программы.
После каждой инструкции в языке C++ ставятся точка с запятой.
Перейдем к терминалу и вначале с помощью команды cd перейдем к каталогу, где расположен файл с исходным кодом.
Далее для компиляции программы введем команду:
Кроме имени файла с исходным кодом компилятору передается параметр -o hello . Он указывает, что мы хотим скомпилировать файл по имени hello. Если этот параметр не передать, то будет создан файл с именем по умолчанию - a.out.
В итоге после выполнения выше приведенной команды в папке с файлом hello.cpp появится скомпилированный файл, который будет называться hello . И мы сможем его запустить с помощью следующей команды:
И на консоль будет выведена строка "Hello World!".
🐧 Как скомпилировать и запустить программы на C, C++ в Linux
В этом кратком руководстве объясняется, как компилировать и запускать программы на C / C ++ в операционной системе GNU / Linux.
Если вы студент или новый пользователь Linux, пришедший с платформы Microsoft, то вам может быть интересно, как запускать программы на C или C ++ в дистрибутиве Linux.
Потому что компиляция и запуск кода на платформах Linux немного отличается от Windows. Давайте начнем, не так ли?
Настройка среды разработки
Как вы, возможно, уже знаете, нам нужно установить необходимые инструменты и компиляторы для запуска кода, верно?
Средства разработки включают в себя все необходимые приложения, такие как компиляторы GNU GCC C / C ++, make, отладчики, справочные страницы и другие компоненты, которые необходимы для компиляции и сборки нового программного обеспечения, пакетов и т. д.
После установки необходимых инструментов разработки проверьте их с помощью одной из следующих команд:
Компиляция и запуск программ на C, C ++ на Linux
Во-первых, давайте посмотрим, как скомпилировать и запустить простую программу, написанную на языке Си.
Напишите свой код / программу в вашем любимом редакторе CLI / GUI.
Я собираюсь написать свою программу на C, используя редактор nano.
Примечание: вам нужно использовать расширение .c для программ на C или .cpp для программ на C ++.
Если в вашем коде / программе есть какие-либо синтаксические или семантические ошибки, они будут отображены.
Если ошибки нет, компилятор успешно сгенерирует исполняемый файл с именем itisgood в текущем рабочем каталоге.
Наконец, выполните программу, используя команду:
Вы увидите вывод, как показано ниже:
Чтобы скомпилировать несколько исходных файлов (например, source1 и source2) в исполняемый файл, запустите:
$ gcc source1.c source2.c -o executable
Чтобы разрешить предупреждения, отладьте символы в выводе:
$ gcc source.c -Wall -Og -o executable
Чтобы скомпилировать исходный код без ссылок:
Приведенная выше команда создаст исполняемый файл с именем source.o.
Если ваша программа содержит математические функции:
$ gcc source.c -o executable -lm
Для более подробной информации обратитесь к справочным страницам.
Компиляция и запуск программ C ++
Напишите свою программу на C ++ в любом редакторе по вашему выбору и сохраните ее с расширением .cpp.
Вот простая программа на C ++.
Чтобы скомпилировать эту программу C ++ в Linux, просто запустите:
Если ошибок не было, вы можете запустить эту программу C ++ под Linux, используя команду:
Вы увидите вывод, как показано ниже:
В качестве альтернативы, мы можем скомпилировать вышеуказанную программу на C ++, используя команду «make», как показано ниже.
Я не использовал расширение .cpp в приведенной выше команде для компиляции программы.
Нет необходимости использовать расширение для компиляции программ на C ++ с помощью команды make.
$ ./itisgood Welcome To itisgood.ru!
Для более подробной информации обратитесь к справочным страницам.
Надеюсь все было достаточно просто и понятно! 🙂
itisgood
🐧 Как исправить ошибку «repository is not valid yet»
🌐 Как остановить запросы с пустым или неправильным заголовком хоста
You may also like
📜 Чтение файла построчно на Bash
📧 В чем разница между IMAP и POP3
✔️ Как управлять контейнерами LXD от имени обычного.
📜 Руководство для начинающих по созданию первого пакета.
Феноменальная популярность электроники Xiaomi: основные причины
📜 Получение вчерашней даты в Bash: Практическое руководство
Использование специальных гелей при мышечных болях
📦 Как расширить/увеличить файловую систему VxFS на Linux
Услуги по размещению серверного оборудования в ЦОД
Для чего выполняется ИТ консалтинг на предприятиях?
Leave a Comment Cancel Reply
• Свежие записи
• Категории
• Теги
• itsecforu.ru
• Страны посетителей
IT is good
В мире компьютерных игр Steam, платформа разработанная компанией Valve, является одной из самых популярных и широко используемых. Она предоставляет огромный выбор игр для…
В этой статье вы узнаете, как удалить удаленный Git-репозиторий. Процесс прост, но его полезно запомнить, чтобы избежать неожиданностей в будущем. Git – это…
В 11-й версии своей операционной системы Microsoft серьезно переработала интерфейс и убрала несколько привычных функций. Нововведения не всем пришлись по душе. Мы дадим…
Продажа ноутбука нередко становится хлопотным занятием. Кроме поиска покупателя, продавцу необходимо подготовить устройство перед проведением сделки. Но если последовательно выполнить все шаги, ничего…
Вы можете оказаться в ситуации, когда вам нужно использовать скрипт шелла для чтения файлов построчно. В этом руководстве я расскажу о нескольких способах…
Запуск скомпилированного файла в ubuntu
Всем привет , интересуюсь c++ , вот появился вопрос , скомпилировал я код, появляется у меня скомпилированный файл который надо запустить , но он в формате exe , wine у меня не установлен , можно ли сделать чтобы компилятор создал программу не в .exe формате а в том формате , который я бы смог открыть через ubuntu ? Либо сделать универсальный формат , если есть такой .
1 Что мешает вам скомпилировать код в gcc под Убунтой для нативной платформы? 2 Что мешает вам в Убунте установить и настроить wine?
Я в курсе про Wine , меня интересует можно ли задать правило компилятору , чтобы он создал бинарник не в .exe формате , а в том на который нажав мышкой 2 раза , он откроется как и с .exe на винде
Если вы под Убунтой в gcc компилируете exe-файл, то есть исполняемый файл для платформы win-32, если я вас правильно понял, тогда сами понимаете, что это возможно, так как gcc по умолчанию, компилирует под нативную платформу (x86_64). Только, как вам написали в ответе, не всякий код написанный под одну платформу, без учёта кросс-компиляции, возможно сходу собрать под другой.
я вас понял , но вопрос был в том что , как через gcc скомпилировать исполняемый файл для ubuntu так , чтобы он открылся при нажатии на него 2йным щелчком ( также как .exe в винде)
2 ответа 2
Кривой путь: гуглить про кросс-компиляцию. Например, если Cygwin, то (примерно, давно такой ерундой не занимался):
- Качаем последнюю версию crosstool-ng
- Распаковываем её куда-нибудь в cygwin shell, запускаем ./configure (доустанавливаем то, на что она матерится - bison, flex, cvs, wget, исходники/библиотеку ncurses, и т.д.)
- make , make install , и дальше - по инструкциям отсюда.
Неожиданный путь: поставить Open Watcom для Windows (при установке не забыть поставить галочку у Linux в target platform). Создание нового проекта в нём:
Может прокатить 🙂 Хотя поддержки последних стандартов от него ждать не приходится, но "Hello, world" исправно собирает 🙂
Правильный путь: поставить убунту в виртуалке и собирать в ней.
И в любом случае готовиться к тому, что исходники, без проблем собирающиеся под Windows, придётся дорабатывать напильником. После чего может возникнуть желание пойти по совсем правильному пути: работать под Linux, а Windows держать в виртуалке 🙂
Либо сделать универсальный формат , если есть такой .
Как запустить скомпилированную программу в Linux ( Ubuntu ) без терминала?
Пытаюсь начать программировать в Linux, и сразу вопрос проблема. В Windows написал код, скомпилировал, получил на выходе ЕХЕшник. Двойной щелчок по программе, она запустилась. В Linux написал простую программу на С в блокноте ( для начала ), скомпилировал gcc prog.c -o prog, получил на выходе файл. Но Я ее могу запустить только через терминал командой ./prog .А как запускать программы по двойному щелчку мыши? А если вы еще дадите простой код с кнопкой и обработкой события по нажатию этой кнопки или любую другую полезную информацию по этой теме ( кроссплатформенность например ), Я вам искренне буду благодарен. Хочется дальше развиваться.
Простой 2 комментария
В линуксе, как и в виндовс, как и во всех остальных операционных системах (мне знакомых), есть два типа программ: консольные и с графическим интерфейсом.
Консольные программы требуют наличия какого-то терминала или консоли, соответсвенно их хоть и можно запустить по двойному щелчку, не всегда результат их работы будет виден, если дополнительно не указать в каком окружении их запускать.
Про программы с графическим интерфейсом все просто - они сразу пытаются открыть графическое окно. Но сама программа будет немного сложнее.
Так, Вы сделали и скомпилировали консольную программу. В этом же терминале можно ее и запустить.
Либо сделать "лаунчер" типа
xterm ./prog
Как сделать "лаунчер", зависит от вашего графического окружения, но обычно можно просто сделать desktop-файл, его практически все в линуксе понимают.
Просто создайте текстовый файл prog.Desktop со следующим содержимым (Exec - полный путь до вашей программы, Icon - путь до иконки, но можно без нее)
[Desktop Entry] Encoding=UTF-8 Version=1.0 Type=Application Terminal=true Exec=/path/to/executable Name=Name of Application Icon=/path/to/icon
ЗЫ. Да, забыл напомнить, сделайте в вашей программе выход по ожиданию нажатия на клавишу, иначе можно ничего и не рассмотреть!