Форум программистов, компьютерный форум CyberForum.ru

C++

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 1004, средняя оценка - 4.94
niXman
Эксперт C++
3134 / 1446 / 49
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
#1

Сборки MinGW(GCC-win32/win64) от niXman - C++

30.07.2011, 22:48. Просмотров 131417. Ответов 444

с этого момента, буду производить тестовые/пререлизные/релизные сборки mingw.
файлы с пометкой snapshot и prerelease - не стабильные версии. в реальных проектах использовать не рекомендую. использую для тестирования новых фитчей.
файлы с пометкой release - стабильные, прошедшие тесты.
скачать можно тут.
скачать онлайн-инсталятор можно тут.
скачать msys2 можно тут

в скором времени начну формировать пакеты для разработчиков состоящие из компилятора(mingw), IDE(QtCreator/CodeBlock/Dev-C++/wxDev-cpp), и некоторого набора предкомпилированных библиотек(boost, Wx, Qt, OpenSsl, и еще каких-то.. понять бы что в спросе...). пакеты не будут требовать установки/настройки. распаковал - используй.

Не по теме:

старая ссылка тут.

Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.07.2011, 22:48     Сборки MinGW(GCC-win32/win64) от niXman
Посмотрите здесь:

Сборки MinGW(win32/win64) от niXman C++1x - C++
никто не знает как MinGW(win32/win64) от niXman подключить к codeblocks? и с какими параметрами указывать? я установил threads - win32,...

Win32 -> Win64 = BEX - C++ Builder
Проблема появилась после переустановки вин32 ту 64. Проект был с 12 альфа скинами и библ bass.dll На новой системе поставил тот же RAD...

Как перекомпилить Win32 dll -> Win64 - C++
Привет форумчане. Подскжите как перестроить MS2005 стоящую на ХР что бы можно было перекомпилить мою dll-ку под платформу Win64

Компиляция для win32 bit на win64 - C++
День добрый. Подскажите как в Visual Studio (или еще где) на 64 битной машине (win 8 ) скомпилировать консольное приложение, которое...

Gcc без MinGW - C++
Интересует вопрос, можно ли рабочий код (который без ошибок компилируется в Visual Studio) компилировать с помощью командной строки Windows...

Linker Ошибки [gcc\MingW] - C++
Есть код : #define _WIN32_WINNT 0x0500 //Необходимо для определения функции GetConsoleWindow() в WinCon.h #include <Windows.h> ...

Упаковка ресурсов в exe. gcc (MinGW) - C++ WinAPI
Здравствуйте. Возникла задача упаковать различного рода файлы в программу. Пробовал создавать заголовочный файл с содержимым в духе const...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
niXman
Эксперт C++
3134 / 1446 / 49
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
25.03.2012, 01:41  [ТС]     Сборки MinGW(GCC-win32/win64) от niXman #31
Всем привет.

Если вдруг кто не знает, mingw-builds - это проект предоставляющие сборки компилятора GCC для Windows платформы, т.е. MinGW.

Итак...
До сих пор, проект предоставлял сборки с двумя типами реализации исключений: 1)dwarf, 2)sjlj(1, 2).
Сборки использующие dwarf, будут исключены из последующих сборок проекта mingw-builds.
Связанно это с двумя причинами:
1. dwarf, для windows ОС - это инородный способ реализации исключений, он не может работать правильно в windows из-за того, что реализация как С++ так и Си(SEH) *исключений в компиляторе MSVC использует SJLJ. В связи с этим, возникают трудноуловимые ошибки связанные с разрушением стека и пробросом/ловлей исключений между .dll модулей. Мнение разработчиков CRT для MinGW(mingw-w64) тут.
2. и вторая причина, вытекающая из первой - отсутствие реализации dwarf для windows-x86_64.

Посему, пользователям dwarf сборок придется пересобирать либы. Увы...

С этого момента, проект mingw-builds предоставляет сборки для двух хостов: a)i686, b)x86_64.
Каждая такая сборка, является двухцелевым кросс-компилятором. Компилятор для i686 хоста по умолчанию собирает для i686 цели. Компилятор для x86_64 хоста по умолчанию собирает для x86_64 цели.

Для того, чтоб при помощи компилятора для i686 хоста собрать для x86_64 - при компиляции и линковке добавляйте флаг -m64.
Для того, чтоб при помощи компилятора для x86_64 хоста собрать для i686 - при компиляции и линковке добавляйте флаг -m32.

Разумеется, все зависимости цели должны быть собраны соответствующим образом.

Теперь о зависимостях цели от .dll модулей поставляемых в составе компилятора(libstdc++-6.dll, etc...).
Как правило, при использовании MinGW, путь к mingw/bin прописывается в PATH. Все необходимые для хоста .dll модули так же находятся в mingw/bin. По этому, проблем с выполнением полученных исполняемых файлов нет. Но при использовании кросс-компилятора все немного сложнее.
Если производится сборка при которой host==target - тут все как обычно, ибо .dll модули находятся в mingw/bin. Однако, в случаях когда host!=target, .dll модули оказываются недоступными для целевого исполняемого файла.
Для i686 компилятора, .dll модули для x86_64 цели располагаются в mingw/i686-w64-mingw32/lib64.
Для x86_64 компилятора, .dll модули для i686 цели располагаются в mingw/x86_64-w64-mingw32/lib32.

Если что не понятно - задавайте вопросы.

Сборка для i686 уже готова. Со сборкой для x86_64 хоста возникли некоторые сложности. На страницу проекта пока не выгружал. Хочу одновременно.

Всем спасибо.
niXman
27.03.2012, 02:25  [ТС]
  #32

Не по теме:

визуализация всего периода разработки GCC: http://www.youtube.com/watch?v=ZEAlhVOZ8qQ

niXman
Эксперт C++
3134 / 1446 / 49
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
29.03.2012, 06:49  [ТС]     Сборки MinGW(GCC-win32/win64) от niXman #33
Выгрузил следующие сборки:
1. i686-mingw32-gcc-4.6.3-release-c,c++,fortran-sjlj
2. x86_64-mingw32-gcc-4.6.3-release-c,c++,fortran-sjlj
3. i686-mingw32-gcc-4.7.0-release-c,c++,fortran-sjlj
4. x86_64-mingw32-gcc-4.7.0-release-c,c++,fortran-sjlj

жду отзывов
Севак
любитель покушать
681 / 632 / 106
Регистрация: 25.09.2011
Сообщений: 1,313
03.04.2012, 20:41     Сборки MinGW(GCC-win32/win64) от niXman #34
Подскажите пожалуйста, скачал данный компилятор, а как у его становить?
niXman
Эксперт C++
3134 / 1446 / 49
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
04.04.2012, 12:41  [ТС]     Сборки MinGW(GCC-win32/win64) от niXman #35
так.
knkd
37 / 36 / 2
Регистрация: 08.08.2010
Сообщений: 162
11.04.2012, 21:14     Сборки MinGW(GCC-win32/win64) от niXman #36
А вот интересно, boost собирается с -flto? А то как-то страшно пробовать
niXman
Эксперт C++
3134 / 1446 / 49
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
11.04.2012, 21:16  [ТС]     Сборки MinGW(GCC-win32/win64) от niXman #37
не пробовал)
проверь. чего страшного?))
knkd
37 / 36 / 2
Регистрация: 08.08.2010
Сообщений: 162
11.04.2012, 21:47     Сборки MinGW(GCC-win32/win64) от niXman #38
А как бджаму произвольные ключи для сборки назначить?

Страшно то, что и меньшие программы с флто собираются очень медленно и жрут память...
Правда потом работают быстрее, как ни странно
niXman
Эксперт C++
3134 / 1446 / 49
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
11.04.2012, 21:56  [ТС]     Сборки MinGW(GCC-win32/win64) от niXman #39
bjam cflags=-flto cxxflags=-flto ldflags=-flto <some flags>
niXman
Эксперт C++
3134 / 1446 / 49
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
17.04.2012, 14:29  [ТС]     Сборки MinGW(GCC-win32/win64) от niXman #40
Итак.
В проекте mingw-builds произошли два изменения:
1. проект переехал на sf.net. тыц.
2. опубликованы скрипты сборки с помощью которых вы самостоятельно можете собрать MinGW.
Получить вы можете выполнив эту команду:
git clone git://git.code.sf.net/p/mingwbuilds/code mingw-builds

Архивы с собранным MinGW вы сможете скачать тут.
На данный момент скачивать нечего. Сейчас пересобираю все доступные версии. Сегодня залью.

Так же, для каждого собранного MinGW буду выгружать архивы с исходниками, ибо этого требует лицензия GPL.

Буду признателен если кто-либо попробует воспроизвести процесс сборки на своей машине и в своем окружении.
Инструкция по использованию скриптов.

Всем спасибо!
niXman
Эксперт C++
3134 / 1446 / 49
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
18.04.2012, 06:09  [ТС]     Сборки MinGW(GCC-win32/win64) от niXman #41
Залил следующие сборки:
4.6.2-release(i686/x86_64)
4.6.3-release(i686/x86_64)
4.6.4-prerelease(i686/x86_64)
4.7.0-release(i686/x86_64)
4.7.1-prerelease(i686/x86_64)
4.8.0-snapshot(i686/x86_64)

Тестим, отписываемся.
dr.curse
387 / 343 / 16
Регистрация: 11.10.2010
Сообщений: 1,907
02.05.2012, 17:23     Сборки MinGW(GCC-win32/win64) от niXman #42
niXman, во перрвых спасибо за сборки, очень хорошие. И отдельное спасибо за скрипты. Но у меня вопрос, если скачал твою сборку, могу ли я добавить в нее компилятор java? И если да то как?
niXman
Эксперт C++
3134 / 1446 / 49
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
02.05.2012, 17:29  [ТС]     Сборки MinGW(GCC-win32/win64) от niXman #43
Цитата Сообщение от aram_gyumri Посмотреть сообщение
могу ли я добавить в нее компилятор java?
да, если оно поддерживается mingw`ом.

Цитата Сообщение от aram_gyumri Посмотреть сообщение
как?
1. нарыть необходимые ключики для того чтоб заставить собирать жабу.
2. в файле scripts/gcc.sh добавить эти ключики.
dr.curse
387 / 343 / 16
Регистрация: 11.10.2010
Сообщений: 1,907
02.05.2012, 17:30     Сборки MinGW(GCC-win32/win64) от niXman #44
непонял, можно немножко ястнее.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.05.2012, 17:40     Сборки MinGW(GCC-win32/win64) от niXman
Еще ссылки по теме:

Ошибка undefined reference в Eclipse (Winodows,C++,MinGW,GCC) - Кроссплатформенная разработка
При попытке скомпилировать проект с подключенной библиотекой liblm.a(сторонняя библиотека) выскакивает ошибка: ...

Запуск программы на Win64 - C++ Builder
Столкнулся с проблемой запуска программы на 64 битной системе. Установил через инсталятор программу, а она не запускается. Делалась на 32...

подскажите среду с компилятором под Win64 - C++
У меня есть проект на стареньком борланде 6. До недавнего времени мне его возможностей хватало, однако не так давно столкнулся с...

Как создать немодальный диалог на Win64 API? - C++ WinAPI
Собственно в Win32 API все довольно легко, а с Win64 возникли траблы. Вот таким образом создаем на Win32 API. #include...

gcc-4.7.0 - C++ Linux
Здравствуйте, как установить gcc-4.7.0 на Ubuntu 11.10 ? Текущая версия 4.6.1 и при sudo apt-get install gcc пишет, что установлена...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
niXman
Эксперт C++
3134 / 1446 / 49
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
02.05.2012, 17:40  [ТС]     Сборки MinGW(GCC-win32/win64) от niXman #45
что конкретно непонятно?
Yandex
Объявления
02.05.2012, 17:40     Сборки MinGW(GCC-win32/win64) от niXman
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru