- MinGW — бесплатный С и С++ компилятор для Windows
- Обзор GCC
- Установка MinGW
- Как установить компилятор gcc / g++ для Windows. Установка gcc
- 0. Прежде чем поставить компилятор GCC
- 1. Скачиваем установщик компилятора
- 2. Установка GCC
- 3. Проверка установки
- 4. Бонус. Компиляция программ с помощью GCC
- Что ещё за a.out? Непонятно!
- А Вы знаете, что мы пишем программы на C, C++, C#, Pascal и Python?
- Почему именно мы?
- Как с нами связаться?
- портативный gcc
- Решение
- GCC Releases
- Download
- GCC Timeline
MinGW — бесплатный С и С++ компилятор для Windows
Предоставляет полный набор инструментов для компилирования и линковки программ без использования каких либо платных библиотек или инструментов.
Все утилиты предназначены для работы из командной строки, но могут использоваться такими популярными IDE как NetBeans, Eclipse и DevCPP, которые предоставляют графический интерфейс к компиляторам GCC.
Обзор GCC
GCC — GNU Compiler Collection, первый С компилятор с открытым исходным кодом, он был выпущен в 1987 г. Возможность создавать С++ программы была добавлена в 1992 г.
Впоследствии функциональность компилятора была расширена и включена поддержка таких языков программирования как Objective-C, Java, Fortran, ADA и другие.
GCC — очень мощный инструмент, распространяемый под лицензией GNU GPL (GNU General Public License), написан на языке С и в данный момент является кроссплатформенным — может работать практически под любой современной операционной системой и компилировать программы под различные типы процессоров, в том числе для микроконтроллеров, портативных устройств и 64-разрядных процессоров.
Установка MinGW
Официальный сайт MinGW http://www.mingw.org. Чтобы скачать комплект, перейдите на страницу http://sourceforge.net/downloads/mingw, вам понадобится файл «mingw-get-inst» с расширением EXE.
Для установки требуется подключение к сети интернет.
Рзмещайте все файлы по стандартному пути, например, «C:\MinGW».
В данном случае выбраны компилятор С и С++, инструменты для разработки и комплект утилит командной строки — MSYS.
Если всё выбрано правильно, жмём «Install».
Закройте окно установщика — нажмите «Finish».
Нам потребуется значение переменной PATH, там должны быть прописаны пути к папкам с исполняемыми файлами MinGW и MSYS, в данном случае это директории «C:\MinGW\bin» и «C:\MinGW\msys\1.0\bin».
Если эти значения не были автоматически добавлены в переменную в процессе установки, допишите их вручную, добавте в начало строку «C:\MinGW\bin;C:\MinGW\msys\1.0\bin;», только без кавычек.
Если в вашей операционной системе отсутствует переменная PATH, то создайте её самостоятельно.
Теперь, когда все инструменты установлены, можно использовать GCC компиляторы в режиме командной строки или настроить их использование в своей IDE.
Как установить компилятор gcc / g++ для Windows. Установка gcc
15 декабря 2018
Время чтения: 5 минут
Для того, чтобы писать программы на C/C++ обычно достаточно установить какую-нибудь интерактивную среду разработки (IDE), например, Visual Studio или Eclipse, однако иногда (обычно в целях обучения студентов) требуется создавать программы в обыкновенном текстовом редакторе и компилировать приложение, используя консоль и компилятор gcc. В Unix системах он обычно установлен прямо «из коробки», а вот на Windows системах такой роскоши не наблюдается. Более того, у многих пользователей возникает множество проблем при установке компилятора. Поэтому нами было принято решение написать данную статью, чтобы помочь всем тем, кому пришлось или приходится мучаться с установкой этого компилятора на Windows.
Кстати, если вдруг на вашей Unix системе не установлен GCC, то поставить его можно командой sudo apt install gcc , введя свой пароль и согласившись на установку.
0. Прежде чем поставить компилятор GCC
Перед тем как приступить к установке этого компилятора на ваш компьютер, убедитесь в том, что GCC ещё не установлен на нём. Для этого откройте консоль (нажмите Win + R, введите в появившемся окне cmd и нажмите клавишу Enter) и введите следующую команду: gcc —version и нажмите Enter. Если компилятор уже установлен, то выполненная команда выдаст примерно следующую информацию:
Если в окне консоли появилось сообщение с версией компилятора и другая информация о GCC (второй скриншот), значит компилятор уже установлен и больше дополнительно ничего делать не нужно. А вот если вывод командной строки такой:
— значит GCC ещё не установлен в системе, поэтому двигаемся дальше.
1. Скачиваем установщик компилятора
Чтобы поставить GCC на операционную систему Windows, необходимо скачать установочный файл для него. Сделать это можно здесь: equation.com/servlet/equation.cmd?fa=fortran. Найдите в таблице версию компилятора, которая вам больше нравится (мы рекомендуем скачивать самую последнюю, на текущий момент — это версия 8.2.0) и скачайте установщик для вашей системы (32 или 64 бит).
2. Установка GCC
После того, как файл был скачан, откройте в проводнике папку, в которую был скачан установщик и запустите его, кликнув по файлу дважды левой кнопкой мыши. Появится окно, требующее подтверждения действия. В нём нужно выбрать да (иначе ничего ставиться не будет).
Установщик начнёт работу и отобразит окно с консолью, а также окно с бежевым фоном, в котором попросит прочесть и принять (или отклонить) лицензионное соглашение. Нажимаем Accept.
После этого установщик попросит выбрать путь для установки, предложив по умолчанию путь C:\mingw . Если вам категорически не нравится этот путь — измените его на более подходящий на ваш взгляд, в противном же случае просто нажмите Install.
Теперь остаётся только дождаться окончания распаковки архивов и установки их на компьютер. Как только все файлы будут установлены, инсталятор сообщит об этом, после чего нужно будет нажать на кнопку Finish.
3. Проверка установки
По завершении работы установщика перезагрузите компьютер и вновь откройте окно командной строки, введите команду gcc —version и нажмите Enter. На этот раз ответ от этой команды должен будет совпадать со вторым скриншотом из пункта 0. Если это не так, то скорее всего работа установщика была некорректно или преждевременно завершена, так что просто начните установку заново.
Поздравляем! Теперь на вашем компьютере установлен компилятор GCC и вы можете писать программы на языках C и C++, а компилировать их через командную строку!
4. Бонус. Компиляция программ с помощью GCC
Теперь, когда у вас установлен компилятор GCC, вы можете создавать программы на C/C++, используя только текстовый редактор и консоль. Для этого создайте новый файл и назовите его как угодно (например, hello_world). Задайте ему расширение .c вместо .txt . Напишите (или скопируйте) текст программы на С в этот файл. Откройте командную строку (Win + R, cmd) и введите следующую команду gcc hello_world.c и нажмите Enter. Если код не содержит ошибок, то результатом команды будет пустота. В противном же случае вы увидите все ошибки, который нашёл компилятор в программе с указанием места этой ошибки. При этом в проводнике появится файл a.out.exe , который будет являться исполняемым файлом для написанной программы. Чтобы запустить его введите в консоли a.out (для Unix-систем нужно писать ./a.out ) и нажмите Enter.
Что ещё за a.out? Непонятно!
По умолчанию при компиляции программ GCC в качестве результата создаём исполняемый файл с именем a.out (если такой уже есть, то b.out и т.д.). Это может быть не очень удобно, если у вас в папке лежит сразу много программ, которые нужно скомпилировать и затем запустить. Неудобно хотя бы тем, что разобраться, что такое a.out, а что такое b.out и c.out может быть непросто. Именно поэтому мы рекомендуем компилировать программы с явным указанием имени выходного файла. делается это так: gcc имя_файла.c -o имя_программы .
В результате выполнения такой программы вместо a.out будет создаваться файл с именем, заданным в имя_программы. Например, если для файла hello_world.c мы хотим получить программу hello, то компилировать нужно такой командой: gcc hello_world.c -o hello .
Используя понятные имена выходных программ (исполняемых файлов), вы гарантируете себе простоту работы и сокращение времени на разбирательство спустя долгое время.
Программист, сооснователь programforyou.ru, в постоянном поиске новых задач и алгоритмов
Языки программирования: Python, C, C++, Pascal, C#, Javascript
Выпускник МГУ им. М.В. Ломоносова
А Вы знаете, что мы пишем программы на C, C++, C#, Pascal и Python?
Так что если Вам нужно написать программу на C/C++, C#, Pascal или Python — мы с радостью поможем с этим!
В том числе мы занимаемся репетиторством по информатике и программированию, а также готовим к ОГЭ и ЕГЭ!
Почему именно мы?
- Более 1800 выполненных заказов;
- Более 170 отзывов;
- Качественное решение
- Короткие сроки и привлекательные цены
- Различные акции и скидки
Как с нами связаться?
Programforyou — доверяя нам писать программы, вы получаете качественное решение в короткие сроки по привлекательной цене!
портативный gcc
Вышел GCC 4.5.0
GNU и команда разработки GCC рады представить релиз GNU Compiler Collection версии 4.5. В новой.
gcc ресурс
Есть возможность собрать исходник с ресурсом, то есть файлом например текстовый, который будет.
Встроенные типы gcc.
Где взять список встроенных типов gcc с указанием разрядности каждого? float, double я знаю. А.
Компиляция GCC в Windows
У меня в виндусе GCC для виндуса (портированный) Я хочю на нем (5,1) скомпилировать сам.
Можно. В gcc всегда через опции можно настроить любые пути. Чуть позже напишу, как
Но установки одного только gcc не всегда оказывается достаточноым. Обычно каждая версия gcc затачивается на работу с некоторой конкретной версией binutils и glibc. Теортеически версии всего могут быть произвольными, но практически серьёзная отладка идёт только на зафиксированном наборе версий
Решение
Основная масса linux’овых программ (особенно системных) устанавливается так, что разные компоненты лежат в разных местах. Покажу на своём примере, как я свалил все компоненты в одну кучу и как из этой кучи потом запустил компилятор. Сразу предупреждаю, что на другой версии компилятора процесс может быть немного другим. И даже на этой версии компилятора на другом дистрибутиве ОС может быть немного по другому
Все приказы начинаются со знака $. то, что без знака $ — это выдача на экран. Предположим, что мы хотим свалить всё в каталог /home/trampampam/A
- Создаём наш каталог
Смотрим, где вообще лежит gcc и копируем его
Здесь имеется три абсолютных пути, по которым установлены разные компоненты компилятора. В нашем случае первый путь (install) и третий (libraries) совпадают. Нам нужно содержимое всех трёх путей (а в моём случае — двух) свалить в отдельный каталог. Удобнее всего внутри нашего каталога /home/trampampam/A завести другой подкаталог:
Для контроля покажу, что скопировалось в моём случае
В этом списке «include» является каталогом, а потому для сравнения покажу первый уровень содержимого
Работаем с локальной копией gcc. ЧТобы заставить её работать, надо в gcc по опции передать путь, где находятся прочие компоненты. В нашем случае мы свалили всё в одну помойку, а потому достаточно передать одну опцию -B
Для контроля надо запустить сдополнительной опцией -v и глазками проконтролировать, что подцепилось то, что нужно. Опять-таки неинтересные моменты пропускаю
Нужно обратить внимание на:
- /home/trampampam/A/B/include должно быть первым в списке путей до инклюдов, а содержимое каталога /home/trampampam/A/B/include совпадает с содержимоым каталога /usr/lib/gcc/i686-pc-linux-gnu/4.1.2/include (второй по списку)
- В строке запуска линкера (collect2) опция -L/home/trampampam/A/B должна быть самая первая среди всех опций -L (их там несколько)
Добавлено через 1 минуту
Забыл. При копировании «gcc» надо аналогичным образом скопировать «g++» (пускач для компилятора Си++) и «gfortran» (пускач для фортрановского компилятора)
Добавлено через 22 секунды
При запуске с флэшки надо будет скорректировать опцию -B
GCC Releases
Download
GCC releases may be downloaded from our mirror sites.
Important: these are source releases, so will be of little use if you do not already have a C++ compiler installed. As one option, there are pre-compiled binaries. for various platforms.
You can also retrieve our sources using Git.
GCC Timeline
The table is sorted by date. Please refer to our development plan for future releases and an alternative view of the release history.
Release | Release date |
---|---|
GCC 10.3 | April 8, 2021 |
GCC 10.2 | July 23, 2020 |
GCC 10.1 | May 7, 2020 |
GCC 9.3 | March 12, 2020 |
GCC 8.4 | March 4, 2020 |
GCC 7.5 | November 14, 2019 |
GCC 9.2 | August 12, 2019 |
GCC 9.1 | May 3, 2019 |
GCC 8.3 | February 22, 2019 |
GCC 7.4 | December 6, 2018 |
GCC 6.5 | October 26, 2018 |
GCC 8.2 | July 26, 2018 |
GCC 8.1 | May 2, 2018 |
GCC 7.3 | January 25, 2018 |
GCC 5.5 | October 10, 2017 |
GCC 7.2 | August 14, 2017 |
GCC 6.4 | July 4, 2017 |
GCC 7.1 | May 2, 2017 |
GCC 6.3 | December 21, 2016 |
GCC 6.2 | August 22, 2016 |
GCC 4.9.4 | August 3, 2016 |
GCC 5.4 | June 3, 2016 |
GCC 6.1 | April 27, 2016 |
GCC 5.3 | December 4, 2015 |
GCC 5.2 | July 16, 2015 |
GCC 4.9.3 | June 26, 2015 |
GCC 4.8.5 | June 23, 2015 |
GCC 5.1 | April 22, 2015 |
GCC 4.8.4 | December 19, 2014 |
GCC 4.9.2 | October 30, 2014 |
GCC 4.9.1 | July 16, 2014 |
GCC 4.7.4 | June 12, 2014 |
GCC 4.8.3 | May 22, 2014 |
GCC 4.9.0 | April 22, 2014 |
GCC 4.8.2 | October 16, 2013 |
GCC 4.8.1 | May 31, 2013 |
GCC 4.6.4 | April 12, 2013 |
GCC 4.7.3 | April 11, 2013 |
GCC 4.8.0 | March 22, 2013 |
GCC 4.7.2 | September 20, 2012 |
GCC 4.5.4 | July 2, 2012 |
GCC 4.7.1 | June 14, 2012 |
GCC 4.7.0 | March 22, 2012 |
GCC 4.4.7 | March 13, 2012 |
GCC 4.6.3 | March 1, 2012 |
GCC 4.6.2 | October 26, 2011 |
GCC 4.6.1 | June 27, 2011 |
GCC 4.3.6 | June 27, 2011 |
GCC 4.5.3 | April 28, 2011 |
GCC 4.4.6 | April 16, 2011 |
GCC 4.6.0 | March 25, 2011 |
GCC 4.5.2 | December 16, 2010 |
GCC 4.4.5 | October 1, 2010 |
GCC 4.5.1 | July 31, 2010 |
GCC 4.3.5 | May 22, 2010 |
GCC 4.4.4 | April 29, 2010 |
GCC 4.5.0 | April 14, 2010 |
GCC 4.4.3 | January 21, 2010 |
GCC 4.4.2 | October 15, 2009 |
GCC 4.3.4 | August 4, 2009 |
GCC 4.4.1 | July 22, 2009 |
GCC 4.4.0 | April 21, 2009 |
GCC 4.3.3 | January 24, 2009 |
GCC 4.3.2 | August 27, 2008 |
GCC 4.3.1 | June 6, 2008 |
GCC 4.2.4 | May 19, 2008 |
GCC 4.3.0 | March 5, 2008 |
GCC 4.2.3 | February 1, 2008 |
GCC 4.2.2 | October 7, 2007 |
GCC 4.2.1 | July 18, 2007 |
GCC 4.2.0 | May 13, 2007 |
GCC 4.1.2 | February 13, 2007 |
GCC 4.0.4 | January 31, 2007 |
GCC 4.1.1 | May 24, 2006 |
GCC 4.0.3 | March 10, 2006 |
GCC 3.4.6 | March 06, 2006 |
GCC 4.1.0 | February 28, 2006 |
GCC 3.4.5 | November 30, 2005 |
GCC 4.0.2 | September 28, 2005 |
GCC 4.0.1 | July 7, 2005 |
GCC 3.4.4 | May 18, 2005 |
GCC 3.3.6 | May 3, 2005 |
GCC 4.0.0 | April 20, 2005 |
GCC 3.4.3 | November 4, 2004 |
GCC 3.3.5 | September 30, 2004 |
GCC 3.4.2 | September 6, 2004 |
GCC 3.4.1 | July 1, 2004 |
GCC 3.3.4 | May 31, 2004 |
GCC 3.4.0 | April 18, 2004 |
GCC 3.3.3 | February 14, 2004 |
GCC 3.3.2 | October 17, 2003 |
GCC 3.3.1 | August 8, 2003 |
GCC 3.3 | May 13, 2003 |
GCC 3.2.3 | April 22, 2003 |
GCC 3.2.2 | February 05, 2003 |
GCC 3.2.1 | November 19, 2002 |
GCC 3.2 | August 14, 2002 |
GCC 3.1.1 | July 25, 2002 |
GCC 3.1 | May 15, 2002 |
GCC 3.0.4 | February 20, 2002 |
GCC 3.0.3 | December 20, 2001 |
GCC 3.0.2 | October 25, 2001 |
GCC 3.0.1 | August 20, 2001 |
GCC 3.0 | June 18, 2001 |
GCC 2.95.3 | March 16, 2001 |
GCC 2.95.2 | October 24, 1999 |
GCC 2.95.1 | August 19, 1999 |
GCC 2.95 | July 31, 1999 |
EGCS 1.1.2 | March 15, 1999 |
EGCS 1.1.1 | December 1, 1998 |
EGCS 1.1 | September 3, 1998 |
EGCS 1.0.3 | May 15, 1998 |
EGCS 1.0.2 | March 16, 1998 |
gcc 2.8.1 | March 2, 1998 |
gcc 2.8.0 | January 7, 1998 |
EGCS 1.0.1 | January 6, 1998 |
EGCS 1.0 | December 3, 1997 |
2.7.2.3 | August 22, 1997 |
2.7.2.2 | January 29, 1997 |
2.7.2.1 | June 29, 1996 |
2.7.2 | November 26, 1995 |
2.7.1 | November 12, 1995 |
2.7.0 | June 16, 1995 |
2.6.3 | November 30, 1994 |
2.6.2 | November 12, 1994 |
2.6.1 | November 1, 1994 |
2.6.0 | July 14, 1994 |
2.5.8 | January 24, 1994 |
2.5.7 | December 12, 1993 |
2.5.6 | December 3, 1993 |
2.5.5 | November 27, 1993 |
2.5.4 | November 16, 1993 |
2.5.3 | November 11, 1993 |
2.5.2 | November 1, 1993 |
2.5.1 | October 31, 1993 |
2.5.0 | October 22, 1993 |
2.4.5 | June 20, 1993 |
2.4.4 | June 19, 1993 |
2.4.3 | June 1, 1993 |
2.4.2 | May 31, 1993 |
2.4.1 | May 26, 1993 |
2.4.0 | May 17, 1993 |
2.3.3 | December 26, 1992 |
2.3.2 | November 27, 1992 |
2.3.1 | November 1, 1992 |
2.3 | October 31, 1992 |
2.2.2 | June 14, 1992 |
2.2.1 | June 9, 1992 |
2.2 | June 8, 1992 |
2.1 | March 24, 1992 |
2.0 | February 22, 1992 |
1.42.0 (g++) | September 20, 1992 |
1.42 | September 20, 1992 |
1.41 | August 27, 1992 |
1.41.0 (g++) | July 13, 1992 |
1.40.3 (g++) | October 19, 1991 |
1.40 | June 1, 1991 |
1.39.1 (g++) | May 4, 1991 |
1.39 | January 16, 1991 |
1.38 | December 21, 1990 |
1.37.1 (g++) | March 1, 1990 |
1.37.0 (g++) | February 28, 1990 |
1.37.1 | February 21, 1990 |
1.37 | February 11, 1990 |
1.36.4 (g++) | January 30, 1990 |
1.36.3 (g++) | January 16, 1990 |
1.36 | September 24, 1989 |
1.35 | April 26, 1989 |
1.34 | February 23, 1989 |
1.33 | February 1, 1989 |
1.32 | December 21, 1988 |
1.31 | November 19, 1988 |
1.30 | October 13, 1988 |
1.29 | October 6, 1988 |
1.28 | September 14, 1988 |
1.27 | September 5, 1988 |
1.26 | August 18, 1988 |
1.25 | August 3, 1988 |
1.24 | July 2, 1988 |
1.23 | June 26, 1988 |
1.22 | May 22, 1988 |
1.21 | May 1, 1988 |
1.20 | April 19, 1988 |
1.19 | March 29, 1988 |
1.18 | February 4, 1988 |
1.17 | January 9, 1988 |
1.16 | December 19, 1987 |
1.15.3 (g++) | December 18, 1987 |
1.15 | November 28, 1987 |
1.14 | November 6, 1987 |
1.13 | October 12, 1987 |
1.12 | October 3, 1987 |
1.11 | September 5, 1987 (announced late) |
1.10 | August 22, 1987 |
1.9 | August 18, 1987 (never announced) |
1.8 | August 10, 1987 |
1.7 | July 21, 1987 |
1.6 | July 2, 1987 |
1.5 | June 18, 1987 |
1.4 | June 13, 1987 |
1.3 | June 10, 1987 |
1.2 | June 1, 1987 |
1.1 | May 24, 1987 |
1.0 | May 23, 1987 |
0.9 (first beta release) | March 22, 1987 |
Copyright (C) Free Software Foundation, Inc. Verbatim copying and distribution of this entire article is permitted in any medium, provided this notice is preserved.
These pages are maintained by the GCC team. Last modified 2021-04-08 .