Форум программистов, компьютерный форум 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. Просмотров 131210. Ответов 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...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
castaway
Эксперт С++
4881 / 3017 / 370
Регистрация: 10.11.2010
Сообщений: 11,076
Записей в блоге: 10
Завершенные тесты: 1
20.09.2012, 23:29     Сборки MinGW(GCC-win32/win64) от niXman #101
niXman, она объявлена в winuser.h (проверки на версию ОС нет), и в libuser32.a так же присутствует. У меня соображений никаких.

Добавлено через 2 минуты
Цитата Сообщение от niXman Посмотреть сообщение
а в .def файл забыли =)
так там же .def файлов нет вообще. Или они только в исходниках?
niXman
Эксперт C++
3134 / 1446 / 49
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
20.09.2012, 23:46  [ТС]     Сборки MinGW(GCC-win32/win64) от niXman #102
Цитата Сообщение от lazybiz Посмотреть сообщение
в libuser32.a так же присутствует
уже вижу. попробую разобраться...

Цитата Сообщение от lazybiz Посмотреть сообщение
они только в исходниках?
да.

Добавлено через 4 минуты
так, понятно.

в общем, эта функция присутствует в CRT для x86_64, и успешно линкуется.
а в CRT для i686 ее просто недобавили.

ты проверял 64 битными сборками?

Добавлено через 7 минут
исправил.
отправлю патч разрабам, но пересобирать пока не буду.
сам разберешься как библиотеку импорта сгенерить из .def файла?

Цитата Сообщение от niXman Посмотреть сообщение
ты проверял 64 битными сборками?
пинг?
castaway
Эксперт С++
4881 / 3017 / 370
Регистрация: 10.11.2010
Сообщений: 11,076
Записей в блоге: 10
Завершенные тесты: 1
20.09.2012, 23:53     Сборки MinGW(GCC-win32/win64) от niXman #103
Я использую GCC x86_64, но с флагами "-m32 -march=i686". В этом случае проблема актуальна. А вот без них (только что проверил) у меня появились кое-какие другие проблемы. В течение 15 минут попробую описать...
niXman
Эксперт C++
3134 / 1446 / 49
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
20.09.2012, 23:57  [ТС]     Сборки MinGW(GCC-win32/win64) от niXman #104
Цитата Сообщение от lazybiz Посмотреть сообщение
В течение 15 минут попробую описать...
давай. любопытно...
ссылку на архив не забудь. или имя файла архива.
castaway
Эксперт С++
4881 / 3017 / 370
Регистрация: 10.11.2010
Сообщений: 11,076
Записей в блоге: 10
Завершенные тесты: 1
21.09.2012, 00:05     Сборки MinGW(GCC-win32/win64) от niXman #105
Может не по теме.. но все же.
В x86_64 без "-m32 -march=i686" появились
ошибки
layer.cpp:25:62: error: cast from 'HINSTANCE' to 'uint32_t {aka unsigned int}' loses precision [-fpermissive]
layer.cpp: In constructor 'biz::layer::layer(int32_t, int32_t, uint32_t, uint32_t, uint32_t)':
layer.cpp:62:24: error: 'GWL_USERDATA' was not declared in this scope
layer.cpp:62:44: error: cast from 'biz::layer*' to 'LONG {aka long int}' loses precision [-fpermissive]
Преобразование явное. Стандарт что там, что там c++11, но при "-m32 -march=i686" нет ни то что ошибок, даже предупреждениями не пахнет.

Цитата Сообщение от niXman Посмотреть сообщение
Сам разберешься как библиотеку импорта сгенерить из .def файла?
Разберусь, но с твоего волшебного пинка процесс пойдет значительно быстрее.

Добавлено через 36 секунд
Цитата Сообщение от niXman Посмотреть сообщение
ссылку на архив не забудь. или имя файла архива.
Ты об этом: x86_64-mingw-w64-gcc-4.7.2-release-c,c++,fortran-sjlj-rev0.7z ?
niXman
Эксперт C++
3134 / 1446 / 49
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
21.09.2012, 00:14  [ТС]     Сборки MinGW(GCC-win32/win64) от niXman #106
Цитата Сообщение от lazybiz Посмотреть сообщение
error: cast from 'HINSTANCE' to 'uint32_t
тут все стандартно.
если мне не изменяет память, HINSTANCE это указатель. таким образом, для 32ух битного компилятора тут все валидно. но а вот для 64ех битного - нет, потому что указатель имеет размер 64бита. таким образом ты теряешь(можешь потерять) часть значения, о чем тебя компилятор честно предупреждает: loses precision

Добавлено через 1 минуту
Цитата Сообщение от lazybiz Посмотреть сообщение
error: cast from 'HINSTANCE' to 'uint32_t
тут все стандартно.
если мне не изменяет память, HINSTANCE это указатель. таким образом, для 32ух битного компилятора тут все валидно. но а вот для 64ех битного - нет, потому что указатель имеет размер 64бита. таким образом ты теряешь(можешь потерять) часть значения, о чем тебя компилятор честно предупреждает: loses precision

Добавлено через 1 минуту
Цитата Сообщение от lazybiz Посмотреть сообщение
Ты об этом: x86_64-mingw-w64-gcc-4.7.2-release-c,c++,fortran-sjlj-rev0.7z ?
ага.

зы
патч выслал разрабам. приняли. больше этот баг не повторится.
castaway
Эксперт С++
4881 / 3017 / 370
Регистрация: 10.11.2010
Сообщений: 11,076
Записей в блоге: 10
Завершенные тесты: 1
21.09.2012, 00:47     Сборки MinGW(GCC-win32/win64) от niXman #107
niXman, спасибо.
Возможно не по теме, но мне не дает покоя этот
вопрос

Не по теме:

Тут то что может быть:

layer.cpp:62:24: error: 'GWL_USERDATA' was not declared in this scope

В связи с этим, проверить код под x86_64 пока не могу.
niXman
Эксперт C++
3134 / 1446 / 49
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
21.09.2012, 01:01  [ТС]     Сборки MinGW(GCC-win32/win64) от niXman #108
Цитата Сообщение от lazybiz Посмотреть сообщение
error: 'GWL_USERDATA' was not declared in this scope
сделай поиск по хидерам.
или, возможно, это последствия первой ошибки с которой столкнулся компилятор. попробуй исправь первую, и повтори сборку.

Добавлено через 9 минут
и кстати, у mingw-builds есть список рассылки. там можно общаться на русском
castaway
Эксперт С++
4881 / 3017 / 370
Регистрация: 10.11.2010
Сообщений: 11,076
Записей в блоге: 10
Завершенные тесты: 1
21.09.2012, 01:32     Сборки MinGW(GCC-win32/win64) от niXman #109
Нашел ошибку. SetWindowLong считается deprecated. Следует использовать SetWindowLongPtr.
В общем ошибка не в MinGW. Спасибо тебе за ответы!

Добавлено через 1 минуту
Цитата Сообщение от niXman Посмотреть сообщение
и кстати, у mingw-builds есть список рассылки. там можно общаться на русском
Ха) Спасибо, не знал. Возьму на заметку
Sania
0 / 0 / 0
Регистрация: 28.09.2012
Сообщений: 5
28.09.2012, 15:09     Сборки MinGW(GCC-win32/win64) от niXman #110
Скачал сборку i686-mingw-w64-gcc-4.7.2-release-c,c++,fortran-sjlj-rev1.7z - в ней, по моему, не хватает следующих файлов: include\GL\glut.h (хотя есть libglut.a и libglut32.a) не хватает libgl.a (знаю что есть libopengl32, но коли уж есть libglut.a то было бы логично) и аналогично libglu.a. Некоторые библиотеки типа ShivaVG хотят их.

И еще. есть простой пример с библиотекой libjpeg:
#include <stdio.h>
#include <stdlib.h>
#include <jpeglib.h>
int main(void) {jpeg_create_decompress(0); return 0;}

компилирую его так:
gcc -o conftest.exe -lm -ljpeg conftest.c
вырает ошибку:
C:\Temp\cckshgsp.o:conftest.c.text+0x26): undefined reference to `jpeg_CreateDecompress'
collect2.exe: error: ld returned 1 exit status

Компилирую так: gcc -o conftest.exe -lm conftest.c -ljpeg
Ошибка не выдается. Вопрос - порядок следования параметров важен? или это ошибка компилятора?
niXman
Эксперт C++
3134 / 1446 / 49
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
28.09.2012, 15:12  [ТС]     Сборки MinGW(GCC-win32/win64) от niXman #111
Цитата Сообщение от Sania Посмотреть сообщение
в ней, по моему, не хватает следующих файлов: include\GL\glut.h (хотя есть libglut.a и libglut32.a) не хватает libgl.a (знаю что есть libopengl32, но коли уж есть libglut.a то было бы логично) и аналогично libglu.a.
я не в курсе, но разве эти библиотеки должны входить в комплект поставки mingw?
есть какой-то пруф, говорящий об этом?

Цитата Сообщение от Sania Посмотреть сообщение
порядок следования параметров важен?
обычно нет. но бывают и случаи когда важен.
Sania
0 / 0 / 0
Регистрация: 28.09.2012
Сообщений: 5
28.09.2012, 15:23     Сборки MinGW(GCC-win32/win64) от niXman #112
Цитата Сообщение от niXman Посмотреть сообщение
я не в курсе, но разве эти библиотеки должны входить в комплект поставки mingw?
есть какой-то пруф, говорящий об этом?
этого я не знаю, но знаю точно что GL\glut.h и libglut.a - это два сапога пара

Цитата Сообщение от niXman Посмотреть сообщение
обычно нет. но бывают и случаи когда важен.
А как знающий GCC, можете подсказать, данный конкретный пример - параметр с именем компилируемого файла (conftest.c) и используемой в нем функции библиотеки (libjpeg.a: -ljpeg) - тут важно что библиотека должна быть указана после исходника или это всё же некая ошибка? В яндексе на эту тему не нашел, а ранее е приходилось задумываться.
niXman
Эксперт C++
3134 / 1446 / 49
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
28.09.2012, 15:33  [ТС]     Сборки MinGW(GCC-win32/win64) от niXman #113
Цитата Сообщение от Sania Посмотреть сообщение
GL\glut.h и libglut.h
я не думаю что это ошибка. так же, я не думаю что разрабы забыли про эти файлы. давно бы уже кто-то напомнил.
или в предыдущих сборках эти файлы присутствовали?

по остальному - погугли словосочетание "mingw libraries link order"
silent_1991
Эксперт С++
4960 / 3036 / 149
Регистрация: 11.11.2009
Сообщений: 7,027
Завершенные тесты: 1
28.09.2012, 18:12     Сборки MinGW(GCC-win32/win64) от niXman #114
Sania, не входит глут в поставку гцц.
castaway
Эксперт С++
4881 / 3017 / 370
Регистрация: 10.11.2010
Сообщений: 11,076
Записей в блоге: 10
Завершенные тесты: 1
28.09.2012, 18:40     Сборки MinGW(GCC-win32/win64) от niXman #115
Sania, можно установить вручную: http://files.transmissionzero.co.uk/...glut-MinGW.zip (32-битная версия)
Jupiter
Каратель
Эксперт С++
6553 / 3973 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
28.09.2012, 20:23     Сборки MinGW(GCC-win32/win64) от niXman #116
Цитата Сообщение от niXman Посмотреть сообщение
но разве эти библиотеки должны входить в комплект поставки mingw?
glut не должен, но бинарник почему-то есть, а хедера к нему нет, парадокс
Sania
0 / 0 / 0
Регистрация: 28.09.2012
Сообщений: 5
28.09.2012, 22:15     Сборки MinGW(GCC-win32/win64) от niXman #117
То то и оно, логично что глут не должен входить в поставку компилятора, как не входит в составы других компиляторов, но вот библиотека почему то присутствует, поэтому и возникли сомнения.
niXman
Эксперт C++
3134 / 1446 / 49
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
28.09.2012, 22:23  [ТС]     Сборки MinGW(GCC-win32/win64) от niXman #118
lazybiz, Sania, как точно зовется либа?

Добавлено через 14 секунд
т.е. файл библиотеки о котором вы говорите.
Sania
0 / 0 / 0
Регистрация: 28.09.2012
Сообщений: 5
28.09.2012, 22:32     Сборки MinGW(GCC-win32/win64) от niXman #119
Цитата Сообщение от niXman Посмотреть сообщение
lazybiz, Sania, как точно зовется либа?

Добавлено через 14 секунд
т.е. файл библиотеки о котором вы говорите.
http://www.opengl.org/resources/libraries/glut/

от нее соответственно в сборке компилятора есть только часть без инклудов:
mingw\i686-w64-mingw32\lib\libglut.a
mingw\i686-w64-mingw32\lib\libglut32.a
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.09.2012, 22:34     Сборки 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
28.09.2012, 22:34  [ТС]     Сборки MinGW(GCC-win32/win64) от niXman #120
ок. попробую понять, импорт каких функций они предоставляют.
Yandex
Объявления
28.09.2012, 22:34     Сборки MinGW(GCC-win32/win64) от niXman
Ответ Создать тему
Опции темы

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