Конфигурация сборки (англ. «build configuration») — это набор настроек проекта, которые определяют принцип его построения. Конфигурация сборки состоит из:
имени исполняемого файла;
имени директории исполняемого файла;
имён директорий, в которых IDE будет искать другой код и файлы библиотек;
информации об отладке и параметрах оптимизации вашего проекта.
Интегрированная среда разработки имеет две конфигурации сборки: «Debug» (Отладка) и «Release» (Релиз).
Конфигурация «Debug» предназначена для отладки вашей программы. Эта конфигурация отключает все настройки по оптимизации, включает информацию об отладке, что делает ваши программы больше и медленнее, но упрощает проведение отладки. Режим «Debug» обычно используется в качестве конфигурации по умолчанию.
Конфигурация «Release» используется во время сборки программы для её дальнейшего выпуска. Программа оптимизируется по размеру и производительности и не содержит дополнительную информацию об отладке.
Например, исполняемый файл программы «Hello, World!» из предыдущего урока, созданный в конфигурации «Debug», у меня занимал 65 КБ, в то время как исполняемый файл, построенный в конфигурации «Release», занимал всего лишь 12 КБ.
Переключение между режимами «Debug» и «Release» в Visual Studio
Самый простой способ изменить конфигурацию проекта — выбрать соответствующую из выпадающего списка на панели быстрого доступа:
Переключение между режимами «Debug» и «Release» в Code::Blocks
В Code::Blocks на панели быстрого доступа есть также выпадающий список, где вы можете выбрать соответствующий режим конфигурации:
Заключение
Используйте конфигурацию «Debug» при разработке программ, а конфигурацию «Release» при их релизе.
Не знаю можно ли задавать этот вопрос, но где режимы Debug и Release в Visual Studio Code? (Использую компилятор GCC)
Насколько я знаю, debug от release отличается количеством #define и наличием отладочной информации в конечном бинарном файле.
в дебаг режим под g++ обычно добавляют опцию вида -DDEBUG
а по коду добавляют отладочные вставки
отладочная информация нужна для дебагера gdb dbx …
у нас в компании дефайнами не пользуются. Всегда собирают одну сборку, а когда она проходит тестирование из неё выкидывают всё лишнее командой strip <server.bin> и отправляют в релиз.
Здравствуйте! Подскажите, данные знания и программу Visual Studio — потом можно применить для программирования контроллеров Arduino!?
Знания в программировании , да, А вот для программирования самого контролера нужна специальная программа Arduino IDE. Скачать можно на официальном сайте.
Здравствуйте. Спасибо, отличный курс.
Вопрос. Как реализовать режим Release в командной строке, используя Mingw?
Успехов. Еще раз Спасибо
Чтобы реализовать Debug режим в консоли или коммандной строке используется дополнительный ключ для компилятор gcc или g++. Данный ключ "-g" (Например: gcc -g -c main.c -o NameProgramm). Включает отладочную информацию, которая пакуется внутрь исполняемого файла NameProgramm. Следовательно, делает его большего размера, но, при дебагинге такими программами как gdb сразу можно отобразить исходный код.
Спасибо.
Отличное изложение материала! Начал вспоминать то что когда-то пытался выучить и получил истинное удовольствие от того на сколько все просто и понятно изложено и как быстро удается восстанавливать знания и получать новые.
Материал очень понравился, заказал и оплатил PDF файл.
Огромное спасибо автору!
Пожалуйста))
Как переключаться между этими режимами в gcc/g++?
Просто добавьте ключ "-g" (Пример: gcc/g++ -g -c main.c/cpp -o NameYourProgramm). Таким образом, будет включён режим Debug. Без ключа (По умолчанию) включён режим Release.
Не понятно , зачем нужны два exe файла , полученные в режиме debug и relese?. Есть же файл проекта, в котором можно производить отладку программы. А как запустить exe файл debug для отладки? Этот момент не понятно описан.
Александр, вам два файла не нужно. Каждый из них — результат компиляции и сборки исполняемого файла программы в первом случае в конфигурации Debug, а во втором — Release. Вы можете удалить их, при следующей сборки нужной конфигурации исполняемый файл сгенерируется еще раз.
>А как запустить exe файл debug для отладки?
Можно "натравить" отладчик из IDE на исполняемый процесс, те запущенную вами программу. Едва ли это для начинающих, но подробности можно прочитать, например, здесь https://stackoverflow.com/questions/15097610/debugging-an-executable-in-visual-studio
Юрий! Спасибо за грамотное, доступное изложение !
Такое я и искал!
А у меня на dev C++ стоит Release мне оставить это или нет?
То есть, использовать конфигурацию Debug при разработке программ чтобы искать ошибки, а release когда уже уверен что всё в порядке и можно выпускать?
Да.
В скачанном компиляторе CodeBlocks с самого начала используется Relese(на Debug переключаться не хочет), в дальнейших уроках будут возникать ошибки?
У вас последняя версия CodeBlocks? Пробовали переустанавливать?
Ошибки не будут возникать, если вы их допускать не будете. Работать можно и в версии Release, ошибок насчет самой конфигурации Release возникать не должно.
Поддерживаю . Как активировать строки в Меню Debug Code::Bloks 17.12?