Иногда требуется откомпилировать небольшую программу или готовый проект из командной строки. Во-первых, так быстрее. Во-вторых, запуск IDE Visual Studio особенно последних версий достаточно ресурсоёмкое занятие.
Подготовка окружения
Чтобы процесс компиляции запустился необходимо настроить пути и переменные окружения командной строки. Для этого в командной строке необходимо вызвать исполнить командный файл vsvars32.bat:
call «c:Program Files (x86)Microsoft Visual Studio 11.0Common7Toolsvsvars32.bat»
Разные версии Visual Studio устанавливаются в разные каталоги для VS 2012 это будет «c:Program Files (x86)Microsoft Visual Studio 11.0». Для VS 2010 — «c:Program Files (x86)Microsoft Visual Studio 10.0» и так далее. Вам нужно посмотреть/выбрать необходимый каталог.
Компиляция программы без проекта
Если есть готовая программа (например, пример из книги), то бывает проще не создавать проект, а откомпилировать программу прямо из командной строки:
Как программировать на С++ в Visual Studio Code на Windows 10
d:ProjectsLanguagesC++test_VS2012>call «c:Program Files (x86)Microsoft Visual Studio 11.0Common7Toolsvsvars32.bat» d:ProjectsLanguagesC++test_VS2012>copy CON main.cpp #include int main() < printf(«Hello, world!n»); return 0; >^Z Скопировано файлов: 1. d:ProjectsLanguagesC++test_VS2012>cl /EHsc main.cpp Оптимизирующий компилятор Microsoft (R) C/C++ версии 17.00.60315.1 для x86 (C) Корпорация Майкрософт (Microsoft Corporation). Все права защищены. main.cpp Microsoft (R) Incremental Linker Version 11.00.60315.1 Copyright (C) Microsoft Corporation. All rights reserved. /out:main.exe main.obj d:ProjectsLanguagesC++test_VS2012>main.exe Hello, world! d:ProjectsLanguagesC++test_VS2012>
Вся основная работа выполняется командой
cl /EHsc имя_файла.cpp
Компиляция проекта
Когда имеет проект, то его сборку можно осуществить следующим образом:
d:ProjectsLanguagesC++test_VS2012>call «c:Program Files (x86)Microsoft Visual Studio 11.0Common7Toolsvsvars32.bat» d:ProjectsLanguagesC++test_VS2012>devenv test_VS2012.sln /build Microsoft (R) Microsoft Visual Studio 2012, версия 11.0.60315.1. (C) Корпорация Майкрософт (Microsoft Corporation). Все права защищены. 1>—— Построение начато: проект: test_VS2012, Конфигурация: Debug Win32 —— — 1> main.cpp 1> test_VS2012.vcxproj -> d:ProjectsLanguagesC++test_VS2012Debugtest_VS20 12.exe ========== Построение: успешно: 1, с ошибками: 0, без изменений: 0, пропущено: 0 ========== d:ProjectsLanguagesC++test_VS2012>
Основная работа выполняется с помощью команды (не доступна в Express Edition):
Как компилировать C/C++ в Visual Studio Code на Windows?
devenv имя_проекта.sln /build
Источник: kaktusenok.blogspot.com
Установка компилятора gcc и Visual Studio Code на ОС Windows
Прежде чем двигаться дальше, нам нужно настроить рабочее место для написания программ на Си. А, именно, установить (если его еще нет) компилятор и интегрированную среду разработки для написания, компиляции и отладки программ. Начнем с выбора и установки компилятора. На сегодняшний день одним из самых популярных является компилятор gcc. Это сокращение от:
GNU Compiler Collection
Если вы работаете под ОС Linux, то, этот компилятор должен быть уже установлен в системе. Если же вы работаете под ОС Windows, то компилятор нужно устанавливать самим. Давайте это сделаем.
Так как я работаю под ОС Windows, то буду показывать порядок установки всех средств именно на этой ОС. Итак, первым делом нужно перейти на официальный сайт компилятора gcc, предназначенных для ОС Windows:
Далее, переходим в раздел Download/Binaries (бинарники) и видим несколько вариантов способов установки gcc на систему. Наиболее удобный, на мой взгляд, является использование, так называемого, порта MinGW с установкой только необходимых (минимального набора) компонент компилятора gcc.
Здесь есть два варианта MinGW: старый 32-битный и новый – 64-битный. Я рекомендую воспользоваться старым вариантом, т.к. он хорошо себя зарекомендовал и, что называется, проверен временем. С новым могут возникать проблемы, да и для языка Си стандарта C99 он явно избыточен.
Нажимаем на ссылку MinGW и нас перенаправляют на страницу:
и здесь нам нужно скачать установщик mingw-get-setup.exe.
Запускаем эту программу. Появится следующее диалоговое окно:
Нажимаем здесь кнопку «Install». В следующем окне соглашаемся со всеми настройками по умолчанию, в том числе и с маршрутом распаковки «C:MinGW» (если вас он не устраивает, то можете изменить на свой) и нажимаем на кнопку «Continue». Начнется скачивание и установка. После установки этот инсталлятор автоматически запустится:
В диалоговом окне нам нужно выбрать все необходимые компоненты для установки компилятора gcc для языка Си. Они следующие:
- mingw32-gcc-bin (после отметки также дополнительно отмечаются другие компоненты, с которыми mingw32-gcc-bin работает совместно);
- mingw32-gcc-g++-bin (для установки линкера для компилятора Си);
- mingw32-make-bin;
- mingw32-gdb-bin (дебаггер, для отладки кода).
После этого в меню «Installation» выбираем пункт «Apply Changes» и в окне нажимаем кнопку «Apply»:


Установка и настройка Visual Studio Code
Следующим шагом нам нужно установить интегрированную среду для написания, компиляции и отладки наших программ написанных на языке Си. Для этого, на мой взгляд, удобно воспользоваться программой Visual Studio Code, доступной на странице официального сайта: https://code.visualstudio.com Именно в ней я буду писать и показывать все тексты программ данного курса.
При желании, вы, конечно, можете использовать любую другую среду, главное, чтобы в ней было удобно компилировать и отлаживать программы на Си. Первым делом, конечно же, нужно скачать дистрибутив программы Visual Studio Code и установить себе на компьютер. Ничего сложно в этом нет. Далее, открываем эту программу.
Для начала работы нам нужно определиться, где будут располагаться файлы текущего проекта. Делается это очень просто. На диске в любом желаемом месте создается папка, которая, затем, выбирается в программе VS Code. В моем случае – это путь: D:Visual StudioCodecourse У вас может быть любой другой. Сейчас каталог пустой.
Поэтому для начала работы в него нужно поместить файл, в котором будем писать текст программы. Например, его можно назвать так: lessons.c Обратите внимание, файл с текстом программы на языке Си должен иметь расширение «c». Теперь здесь можно написать простую программу. Пусть это будет классический «Hello, world!»:
#include int main(void) { printf(«Hello, worldn»); return 0; }
Не беспокойтесь пока о том, что содержимое этой программы вам, возможно, непонятно.
Ее мы подробно еще будем разбирать. Пока, на этом этапе, нам нужно просто настроить среду разработки для компиляции и запуска программ на Си. По идее, мы уже сейчас можем достаточно просто скомпилировать эту программу.
Для этого нажимаем Ctrl + ~, появится окно powershell и в нем вручную можно вызвать компилятор gcc следующим образом: gcc lessons.c Если мы все сделали правильно, то в текущем каталоге появится исполняемый файл a.exe, который выводит в консоль сообщение «Hello, world!»: .a Конечно, постоянно выполнять компиляцию через терминал очень неудобно, поэтому нам нужно настроить редактор VS Code под компиляцию Си-программ. Для этого необходимо установить некоторые полезные расширения (extensions).
Щелкаем слева на кнопку с квадратиками и в поиске набираем «c lange»: Выбираем первый компонент C/C++ компании Microsoft, которая позволяет выполнять разработку программ на языке Си. После этого, слева щелкаем на кнопку с треугольником (Run and Debug) и нажимаем на кнопку «Run and Debug».
Сверху в выпадающем списке следует выбрать «C++ (GDB/LLDB)» (это ранее установленный компилятор gcc), затем, скомпилировать и выполнить программу в режиме Debug (отладки):
Далее установим еще одно расширение, которое будет отвечать за простой процесс запуска кода без режима отладки. Чтобы можно было быстро и просто запустить программу и посмотреть, что получается. Для этого переходим на вкладку «extensions» и набираем: code runner Это расширение позволяет с помощью комбинации клавиш Ctrl+Alt+N компилировать и запускать код. Результат отображается во вкладке «OUTPUT».
Настройка компилятора на стандарт C99
Последнее, что нам осталось – это настроить компилятор на стандарт C99. Формально, это делается с помощью специального флага -std следующим образом: gcc -std=c99 -o outputfile sourcefile.c Такой флаг нам нужно добавить в настройках компилятора. Первым делом откроем файл tasks.json в текущем каталоге и пропишем для ключа «args» первым элементом этот ключ: «args»: [
«-std=c99»,
.
] Этот флаг будет срабатывать при перекомпиляции проекта – комбинация клавиш Ctrl+Shift+B. Точно такой же ключ нужно добавить для компилятора, используемого расширением «Code Runner». Для этого переходим в меню File->Preferences->Settings и в строке набираем «code runner run in terminal». Ставим галочку. Затем, в этом же окне настроек набираем в строке «Run Code Configuration».
Находим в настройках раздел «Code-runner: Executor Map» и нажимаем на редактирование. Для ключа «c» после «gcc» прописываем «-std=c99» и ключ «code-runner.runInTerminal» устанавливаем в false. Все, теперь компилятор будет ориентироваться на стандарт c99 при компиляции наших программ.
Источник: proproprogs.ru
C++ и среды разработки
Предположим, мы хотим научиться программировать на C/C++. Для этого нам понадобятся следующие вещи:
- Написать простейший исходный код (программа HelloWorld)
- Скомпилировать исходный код в исполняемое приложение
- Запустить приложение (в том числе, в режиме отладки)
В чем будем писать исходный код? Текстовый редактор.
Сгодится любой текстовый редактор. Но желательно, с подсветкой синтаксиса. Я привык пользоваться Notepad++ (для справки: я — пользователь Windows). Другой редактор, которым я пользуюсь, но для программирования на платформе .NET, это — Visual Studio Code (или сокращенно — VSCode). В обоих редакторах есть подсветка синтаксиса C/C++ (в VSCode нужно будет установить расширение C/C++ for Visual Studio Code (Preview)).
Исходный код программы HelloWorld
Создайте где-нибудь на своем ПК папку, в которой будут лежать все файлы, необходимые для построения приложения (среди этих файлов будет в частности файл исходного кода, но, возможно, не только он один). На всякий случай: желательно, чтобы путь к папке не содержал пробелов. Папку можно назвать, скажем, helloworld. Создайте в папке текстовый файл (я обычно называю его main.cpp) и скопируйте в него текст программы HelloWolrd:
int main ( )
{
std :: cout std :: cin . get ( ) ;
return 0 ;
}
Чем скомпилировать исходный код? Нам нужен компилятор.
Я знаю два варианта…
1. Пакет Windows SDK от Microsoft, который содержит компилятор, отладчик и прочее.
Насколько мне известно, Windows SDK ныне можно установить только в составе Visual Studio. Тем лучше — вы сразу получите и интегрированную среду разработки (правда размер ее дистрибутива — несколько гигабайт). Запустить компилятор или отладчик вы сможете из командной строки (ярлык Developer Command Prompt for Visual Studio в меню Пуск), но вряд ли, установив Visual Studio, вы захотите возиться с командной строкой — скорее всего вы будете запускать и компиляцию и отладку из IDE (IDE — Integrated Development Envinronment — интегрированная среда разработки).
2. Компилятор GCC (GNU Compiler Collection)
GCC пользователи Windows могут заполучить в составе пакетов Cygwin или MinGW (Minimalist GNU for Windows).
О том, как установить Cygwin, я писал в заметке Установка Cygwin. С MinGW все аналогично. Главное — не забыть добавить в переменную окружения PATH путь к папке bin внутри папки установки Cygwin или MinGW. Только я бы не советовал пытаться использовать на одном и том же ПК и Cygwin, и MinGW — потому что если добавить в переменную PATH пути к папкам bin обоих этих пакетов, наверняка возникнет куча проблем при компиляции — я хлебнул этого, когда настраивал компиляцию и отладку в VSCode. Поэтому лучше установите на свой ПК что-то одно — либо Cygwin, либо MinGW, но не оба сразу.
Cygwin и MinGW — это, грубо говоря, наборы утилит, портированных с Unix на Windows. Никакой IDE там нет, поэтому запускать компилятор G++ и отладчик GDB вы будете из командной строки. О том, как это делается, рассказано в заметке C/C++ в Cygwin. Но, опять же, никому не охота возиться с командной строкой. И тут мне известны два варианта:
- Makefile и утилита make
- Настройка текстового редактора для автоматического запуска из него утилит командной строки
Про makefile’ы у меня немножко рассказано в заметке Изучаем архитектуру Intel x86-64 при помощи ассемблера (Часть 2 — Настройка проекта osdevlearning). А здесь рассмотрим настройку текстовых редакторов.
Настройка Notepad++ для компиляции
К сожалению, загуглив, узнал, что Notepad++ не позволяет выполнять отладку привычным нам способом (как в Visual Studio или VSCode). Однако его можно настроить хотя бы для компиляции и запуска программы без отладки. Процесс подобной настройки показан в видео на YouTube How to Compile/Execute C/C++ code in Notepad++ with MinGW. Вкратце: в Notepad++ надо будет установить плагин NppExec:
Меню Plugins > Plugin Manager > [ищем NppExec] > Install
Плагин умеет выполнять скрипты. Можно написать некий скрипт, который будет запускать компилятор, передавая ему нужные аргументы командной строки:
Источник: dvsav.ru