Форум программистов, компьютерный форум, киберфорум
Наши страницы

C++

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

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

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

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

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

Не по теме:

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

39
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.07.2011, 22:48
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Сборки MinGW(GCC-win32/win64) от niXman (C++):

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

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

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

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

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

Mingw-w64 MinGW TDM-GCC - C++
Всем привет. Хочу понять, существует ли принципиальная разница между Mingw-w64, MinGW и TDM-GCC? Какие плюсы/минусы у этих трех...

444
castaway
Эксперт С++
4916 / 3024 / 370
Регистрация: 10.11.2010
Сообщений: 11,081
Записей в блоге: 10
Завершенные тесты: 1
28.09.2012, 23:37 #121
niXman, либа называется GLUT. Официальная версия не обновляется уже хрен знает сколько. Но есть другая: freeglut (http://freeglut.sourceforge.net/index.php#download) достаточно свежая.
Заголовочный файл: gl\glut.h
Библиотечный: libglut.a (для freeglut: libfreeglut.a и libfreeglut_static.a)
0
niXman
Эксперт С++
3139 / 1451 / 49
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
30.09.2012, 13:31  [ТС] #122
Цитата Сообщение от Sania Посмотреть сообщение
можете подсказать, данный конкретный пример - параметр с именем компилируемого файла (conftest.c) и используемой в нем функции библиотеки (libjpeg.a: -ljpeg) - тут важно что библиотека должна быть указана после исходника или это всё же некая ошибка? В яндексе на эту тему не нашел, а ранее е приходилось задумываться.
Кстати, вот о чем я говорил. как раз в списке рассылки проскочило:
http://gcc.gnu.org/ml/gcc-help/2012-09/msg00221.html
1
niXman
Эксперт С++
3139 / 1451 / 49
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
06.10.2012, 20:25  [ТС] #123
В проекте MinGW-builds произошло несколько изменений.

1) Проект изменил свое отношение касательно производимых сборок. Так, до сегодняшнего дня, проект MinGW-builds производил сборки только с использованием 'threads=posix', и не производил сборки использующие DWARF.
Впредь, проект MinGW-builds будет производить сборки с использованием 'threads=posix' и 'threads=win32', а так же и с использованием как SJLJ так и DWARF и SEH(только для 4.8.0 и выше, и только для хоста x86_64)
К примеру, для GCC-4.7.2-release, будут доступны следующие сборки:
- x32-4.7.2-release-posix-sjlj
- x32-4.7.2-release-posix-dwarf
- x32-4.7.2-release-win32-sjlj
- x32-4.7.2-release-win32-dwarf
- x64-4.7.2-release-posix-sjlj
- x64-4.7.2-release-win32-sjlj
поясняющий назначение каждой составляющей в имени сборки.

2) Проект изменил структуру каталогов. поясняющий новую структуру каталогов.
3) Все сборки будут выгружаться только в виде .7z архивов.
4) Тестовые сборки(prerelease/snapshot) будут собираться минимум раз в месяц. Возможно чаще, но не реже.
5) Из поддерживаемых сборками ЯП удален фортран.

На данный момент доступны следующие сборки:
- 4.6.2
- 4.6.3
- 4.7.0
- 4.7.1
- 4.7.2

Все сборки были пересобраны с использованием последних доступных версий gmp/mpfr/mpc/ppl/cloog/mingw-w64-headers/mingw-w64-crt/gdb.

Огромная благодарность всем тем, кто использует сборки проекта MinGW-builds, и в особенности тем, кто тестирует сборки и сообщает о найденных ошибках.
0
fasked
Эксперт С++
4951 / 2531 / 180
Регистрация: 07.10.2009
Сообщений: 4,311
Записей в блоге: 1
07.10.2012, 09:37 #124
niXman, редирект на скриншоты не работает
0
niXman
Эксперт С++
3139 / 1451 / 49
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
07.10.2012, 13:25  [ТС] #125
Цитата Сообщение от fasked Посмотреть сообщение
редирект на скриншоты не работает
это админы намеренно такое замутили?

_clip2net_dot_com/clip/m47996/thumb640/1349433339-clip-14kb.png
_clip2net_dot_com/clip/m47996/thumb640/1349540175-fs-tree-description-23kb.png

Добавлено через 4 минуты
приходится еще и ссылки шифровать %)

Добавлено через 1 минуту
кстати, клиптунет добавили в запрешенные слова %)
0
Jupiter
07.10.2012, 13:25
  #126

Не по теме:

Цитата Сообщение от niXman Посмотреть сообщение
это админы намеренно такое замутили?
угу, но не все и ссылки на радикал все ещё встречаются на форуме

0
castaway
Эксперт С++
4916 / 3024 / 370
Регистрация: 10.11.2010
Сообщений: 11,081
Записей в блоге: 10
Завершенные тесты: 1
11.10.2012, 16:54 #127
Сборка: x32-4.7.2-release-win32-sjlj-rev0.7z
Приложение использующее OpenMP ругается на
отсутствие внешних символов
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
e:/dev/gcc/bin/../lib/gcc/i686-w64-mingw32/4.7.2\libgomp.a(team.o):(.text+0x1b): undefined reference to `pthread_mutex_destroy'
e:/dev/gcc/bin/../lib/gcc/i686-w64-mingw32/4.7.2\libgomp.a(team.o):(.text+0x135): undefined reference to `sem_destroy'
e:/dev/gcc/bin/../lib/gcc/i686-w64-mingw32/4.7.2\libgomp.a(team.o):(.text+0x184): undefined reference to `sem_init'
e:/dev/gcc/bin/../lib/gcc/i686-w64-mingw32/4.7.2\libgomp.a(team.o):(.text+0x21d): undefined reference to `sem_destroy'
e:/dev/gcc/bin/../lib/gcc/i686-w64-mingw32/4.7.2\libgomp.a(team.o):(.text+0x242): undefined reference to `sem_destroy'
e:/dev/gcc/bin/../lib/gcc/i686-w64-mingw32/4.7.2\libgomp.a(team.o):(.text+0x285): undefined reference to `sem_destroy'
e:/dev/gcc/bin/../lib/gcc/i686-w64-mingw32/4.7.2\libgomp.a(team.o):(.text+0x352): undefined reference to `sem_init'
e:/dev/gcc/bin/../lib/gcc/i686-w64-mingw32/4.7.2\libgomp.a(team.o):(.text+0x374): undefined reference to `pthread_mutex_init'
e:/dev/gcc/bin/../lib/gcc/i686-w64-mingw32/4.7.2\libgomp.a(team.o):(.text+0x5bc): undefined reference to `pthread_create'
e:/dev/gcc/bin/../lib/gcc/i686-w64-mingw32/4.7.2\libgomp.a(team.o):(.text+0x7c5): undefined reference to `pthread_setspecific'
e:/dev/gcc/bin/../lib/gcc/i686-w64-mingw32/4.7.2\libgomp.a(team.o):(.text+0x7f6): undefined reference to `pthread_attr_init'
e:/dev/gcc/bin/../lib/gcc/i686-w64-mingw32/4.7.2\libgomp.a(team.o):(.text+0x806): undefined reference to `pthread_attr_setdetachstate'
e:/dev/gcc/bin/../lib/gcc/i686-w64-mingw32/4.7.2\libgomp.a(team.o):(.text+0x819): undefined reference to `pthread_attr_getstacksize'
e:/dev/gcc/bin/../lib/gcc/i686-w64-mingw32/4.7.2\libgomp.a(team.o):(.text+0x82c): undefined reference to `pthread_attr_setstacksize'
e:/dev/gcc/bin/../lib/gcc/i686-w64-mingw32/4.7.2\libgomp.a(team.o):(.text+0x83f): undefined reference to `pthread_attr_destroy'
e:/dev/gcc/bin/../lib/gcc/i686-w64-mingw32/4.7.2\libgomp.a(team.o):(.text+0x8e7): undefined reference to `sem_destroy'
e:/dev/gcc/bin/../lib/gcc/i686-w64-mingw32/4.7.2\libgomp.a(team.o):(.text+0x996): undefined reference to `pthread_setspecific'
e:/dev/gcc/bin/../lib/gcc/i686-w64-mingw32/4.7.2\libgomp.a(team.o):(.text+0x145): undefined reference to `pthread_exit'
e:/dev/gcc/bin/../lib/gcc/i686-w64-mingw32/4.7.2/../../../../i686-w64-mingw32/bin/ld.exe: e:/dev/gcc/bin/../lib/gcc/i686-w64-mingw32/4.7.2\libgomp.a(team.o): bad reloc address 0x7 in section `.text.startup'
e:/dev/gcc/bin/../lib/gcc/i686-w64-mingw32/4.7.2/../../../../i686-w64-mingw32/bin/ld.exe: final link failed: Invalid operation
collect2.exe: error: ld returned 1 exit status
mingw32-make: *** [all] Error 1
Все это при статической линковке. При динамической собирается нормально.
В x32-4.7.2-release-posix-sjlj-rev0.7z проблема не наблюдается.
0
niXman
Эксперт С++
3139 / 1451 / 49
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
11.10.2012, 16:56  [ТС] #128
при линковке добавь '-lpthread'.
и дай знать, помогло ли?
0
castaway
Эксперт С++
4916 / 3024 / 370
Регистрация: 10.11.2010
Сообщений: 11,081
Записей в блоге: 10
Завершенные тесты: 1
11.10.2012, 17:05 #129
Да, помогло. А почему в других случаях не требуется подключать libpthread ?
0
niXman
Эксперт С++
3139 / 1451 / 49
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
11.10.2012, 17:14  [ТС] #130
потому что при использовании 'threads=posix', компилятор конфигурируется так, чтоб автоматически линковать libpthreads

т.е. это уже заложено в систему конфигурации компилятора.
0
castaway
Эксперт С++
4916 / 3024 / 370
Регистрация: 10.11.2010
Сообщений: 11,081
Записей в блоге: 10
Завершенные тесты: 1
28.10.2012, 20:53 #131
У кого-нибудь такое наблюдалось? Помню раньше, когда собирал MinGW было что-то подобное. Какими-то нестандартными манипуляциями обходил это. Какими - уже не помню.
./build gcc-4.7.2 --preload --no-multilib --dyn-deps --use-lto --jobs=1 --threads=posix --mingw-compress x32
0
Миниатюры
Сборки MinGW(GCC-win32/win64) от niXman  
castaway
Эксперт С++
4916 / 3024 / 370
Регистрация: 10.11.2010
Сообщений: 11,081
Записей в блоге: 10
Завершенные тесты: 1
28.10.2012, 21:10 #132
Данная библиотека существует в ~/mingw-prereq/i686-w64-mingw32/bin
Возможно данную директорию следует добавить в $PATH !?
0
niXman
Эксперт С++
3139 / 1451 / 49
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
28.10.2012, 21:50  [ТС] #133
Цитата Сообщение от lazybiz Посмотреть сообщение
Возможно данную директорию следует добавить в $PATH !?
да, этот баг появился вчера. исправим.

Добавлено через 37 секунд
спасибо за тест.

Добавлено через 4 минуты
lazybiz, вставь плиз в 'scripts/ppl.sh' вывод PATH, и покажи что выводит.

Добавлено через 2 минуты
эта ошибка может возникнуть только при использовании '--dyn-deps'. сборки для MinGW-builds используют статическую линковку с зависимостями.

Добавлено через 8 минут
lazybiz, обнови скрипты, и все должно заработать.
0
castaway
Эксперт С++
4916 / 3024 / 370
Регистрация: 10.11.2010
Сообщений: 11,081
Записей в блоге: 10
Завершенные тесты: 1
28.10.2012, 21:54 #134
Цитата Сообщение от niXman Посмотреть сообщение
эта ошибка может возникнуть только при использовании '--dyn-deps'. сборки для MinGW-builds используют статическую линковку с зависимостями.
Да, я понял. Меня, кстати, уже несколько дней интересует вопрос, все никак не могу спросить: с --dyn-deps кто-нибудь собирал удачно?

Цитата Сообщение от niXman Посмотреть сообщение
lazybiz, вставь плиз в 'scripts/ppl.sh' вывод PATH, и покажи что выводит.
0
Миниатюры
Сборки MinGW(GCC-win32/win64) от niXman  
Alexpux
112 / 21 / 0
Регистрация: 28.10.2012
Сообщений: 35
28.10.2012, 22:20 #135
Исправили в репозитории
0
28.10.2012, 22:20
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.10.2012, 22:20
Привет! Вот еще темы с ответами:

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

Как установить принтер подключённый к Win32 на Win64 - Windows 7
Здравствуйте. Забыл как я делал... А мне надо установить принтер Samsung SCX-4100 который соединён по USB c компом на котором стоит WinXP...

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

Какой GCC+MinGW нужно устанавливать? - C Linux
У меня Убунта 14.04 64 разрядная, в списке дистрибутив компиляторов много, какой из них выбрать и как для С? gcc-mingw-w64: GNU C...


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

Или воспользуйтесь поиском по форуму:
135
Ответ Создать тему
Опции темы

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