Russian Qt Forum
Апрель 25, 2024, 20:37 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: 1 [2] 3 4 ... 10   Вниз
  Печать  
Автор Тема: Сборки mingw  (Прочитано 97439 раз)
niXman
Гость
« Ответ #15 : Март 29, 2012, 05:49 »

Выгрузил следующие сборки:
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

жду отзывов Улыбающийся
Записан
niXman
Гость
« Ответ #16 : Апрель 17, 2012, 13:34 »

Итак.
В проекте mingw-builds произошли два изменения:
1. проект переехал на sf.net. тыц.
2. опубликованы скрипты сборки с помощью которых вы самостоятельно можете собрать MinGW.
Получить вы можете выполнив эту команду:
    git clone git://git.code.sf.net/p/mingwbuilds/code mingw-builds

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

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

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

Всем спасибо!
Записан
niXman
Гость
« Ответ #17 : Май 24, 2012, 04:27 »

Сегодня состоялся релиз системы сборки MinGW в рамках проекта MinGW-builds под версией 0.1.0.
Из основных изменений произошедших с момента первого коммита, можно отметить следующие:
  • Добавлен ключ --preload, заставляющий систему сборки сначала скачать все исходники, и только потом собирать. Необходим для одновременной сборки сразу нескольких версий.
  • Добавлен ключ --dwarf, информирующий систему сборки использовать DWARF вместо SJLJ. При этом, доступна сборка только для i686 хоста, и только для i686 цели.
  • Для каждой версии GCC, отныне, отдельный конфигурационный файл.
  • Аргументы командной строки более не зависят от порядка написания.
  • Логи сборки более не вставляются в архив со сборкой.
  • С этого момента, архивы со сборками снова содержат суффикс используемой сборкой реализации исключений.
  • Msys, со всеми необходимыми для сборки MinGW тулзами(7z+wget+svn+git+mercurial+cvs), вы теперь можете скачать на странице проекта.
  • Добавлен патч исправляющий ошибку, возникающую при генерации компилятором кода развертывания стека и использованием GetLastError() в этом скопе.
  • Добавлены следующие тесты: 1)тест POSIX-RT функций, 2)тест С++11 sleep_for/sleep_until функций, 3)тест GetLastError() при развертывании стека.

Инструкцию по использованию системы сборки MinGW-builds вы можете прочесть здесь.
Записан
niXman
Гость
« Ответ #18 : Июнь 14, 2012, 23:59 »

Несколько часов назад состоялся релиз компилятора GCC версии 4.7.1.
Это первый баг-фикс релиз для ветки 4.7.х.
Было исправлено 117 багов. Полный список вы можете обозрить тут.

Уже сейчас вы можете скачать сборки MinGW на базе GCC-4.7.1.
Записан
Alex Custov
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2063


Просмотр профиля
« Ответ #19 : Июнь 15, 2012, 00:01 »

бинарная сборка Qt не поддерживает gcc 4.7, увы.
Записан
alex312
Хакер
*****
Offline Offline

Сообщений: 606



Просмотр профиля
« Ответ #20 : Июнь 15, 2012, 02:45 »

бинарная сборка Qt не поддерживает gcc 4.7, увы.
не та модель исключений?
Записан
niXman
Гость
« Ответ #21 : Июнь 15, 2012, 08:58 »

бинарная сборка Qt не поддерживает gcc 4.7, увы.
ничего удивительного.
Записан
niXman
Гость
« Ответ #22 : Июнь 15, 2012, 09:00 »

бинарная сборка Qt не поддерживает gcc 4.7, увы.
не та модель исключений?
не та CRT.
Записан
Alex Custov
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2063


Просмотр профиля
« Ответ #23 : Июнь 15, 2012, 13:07 »

ничего удивительного.

Почему так происходит? В gcc 4.6.2 w32api 3.17, и оно тоже ВРОДЕ БЫ КАК несовместимо с бинарной сборкой Qt, но всё работает прекрасно?
Записан
niXman
Гость
« Ответ #24 : Июнь 15, 2012, 13:26 »

ничего удивительного.

Почему так происходит? В gcc 4.6.2 w32api 3.17, и оно тоже ВРОДЕ БЫ КАК несовместимо с бинарной сборкой Qt, но всё работает прекрасно?
во-первых - gcc-4.6.x и gcc-4.7.x - имеют несовместимую ABI.
во-вторых - CRT от mingw-org и mingw-w64 имеют разные кодовые базы, которые они не стараются делать совместимыми, за ненадобностью первого, ибо тупик.

несколько дней назад, я наткнулся на очень необычный баг при использовании кути собранной компилятором использующим mingw-org, и компилятором использующим mingw-w64. проблема была в том, что понепонятным причинам происходил deadlock там, где его в принципе быть немогло. по ходу разбирательства, заметил, что неправильно/не_в_том_порядке деструктятся объекты/мемберы-данные.

как оказалось, на этой машине была установлена кутя от производителя, а компилятор был заменен моей сборкой. (просто мне пришлось поработать на не своей машине)
после замены компилятора на тот что идет в составе SDK - все заработало. так же, ради_убедиться, произвел еще и пересорку кути и сопутствующих проектов с использованием своей сборки - все работало как надо.

коварный баг =)

ps
при всем при этом, коллега говорит что такой "комплект" он использует уже несколько месяцев. и никаких багов не замечал =)
« Последнее редактирование: Июнь 15, 2012, 13:32 от niXman » Записан
niXman
Гость
« Ответ #25 : Июль 10, 2012, 17:41 »

пересобрал MinGW на базе gcc-4.7.1-release.
обновил GDB до версии 7.4.1, и GNU make с этого момента собирается с поддержкой job-server.(благодарность для Alexpux за патчи и внесение изменений в систему сборки)
для пользователей Qt это станет приятным бонусом, ибо теперь у них появится возможность производить сборку Qt и проектов основанных на .pro файлах в требуемое кол-во потоков.

качать архивы с пометкой 'rev2'.
Записан
niXman
Гость
« Ответ #26 : Июль 14, 2012, 00:43 »

Сегодня состоялся релиз системы сборки MinGW-builds под версией 0.2.0.
В эту версию вошли следующие изменения:
  • Добавлен ключ --download, выполняющий только загрузку исходников, без сборки.
  • Добавлен ключ --no-multilib, информирующий систему сборки собрать одноцелевой MinGW.
  • Добавлен ключ --rev=N, использующийся для указания номера ревизии сборки.
  • Добавлен ключ --threads=model, использующийся для указания используемой сборкой модели потоков. Доступны: posix/win32. При использовании win32 модели, функционал из std concurrency окажется недоступным. (требуется WIN-программер способный дореализовать WIN backend)
  • Добавлен ключ --mingw-compress, использующийся для указания системе сборки сжать собранный MinGW в архив.
  • Добавлен ключ --srcs-compress, использующийся для указания системе сборки сжать исходники используемые для сборки MinGW в архив.
  • Добавлен патч исправляющий ошибку, возникающую при генерации компилятором кода эпилога развертывания стека и затирающую WIN32 LastError в этом скопе.
  • С этого момента, GNU make поставляемый в составе сборок производимых проектом MinGW-builds, собирается с поддержкой job-сервера.
  • MSYS доступный для загрузки со страницы проекта MinGW-builds обновлен. Добавлен модуль gettext для M4 макропроцессора. (качать архивы с суффиксом 'rev1')

Благодарность коммитерам и тестерам за внесенные изменений и тесты.

Эта версия системы сборки MinGW-builds является последней и завершенной для нативной сборки в windows. Следующими этапами будет внесение необходимых изменений позволяющих использовать MinGW-builds как для сборки нативного MinGW, так и для сборки кросс-MinGW для Linux и OSX хостов.
Записан
niXman
Гость
« Ответ #27 : Август 31, 2012, 21:22 »

немного новостей касательно gcc/MinGW.

недавно, в транк, был влит патч реализующий SEH для Win64: http://gcc.gnu.org/ml/gcc-patches/2012-07/msg00512.html
как оказалось, в патенте борланд на SEH нашли лазейку. а именно, то, что патент оговаривает идею SEH для Win32, но не для Win64. в виду этого, было решено принять этот патч в транк, т.к. для Win разработчиков SEH является весьма необходим. но, у этого патча есть и минусы, для меня, по крайней мере. как некоторые могли заметить, я уже больше месяца не произвожу сборки транка. и это "благодаря" этому патчу. но, транк есть транк. он и не должен собираться. надеюсь, к релизу 4.8.0 эту недоразумение пофиксят.

вторая новость состоит в том, что расширение 'Intel Cilk-Plus' принято в транк: http://gcc.gnu.org/ml/gcc/2012-08/msg00355.html
это означает, что gcc, начиная с версии 4.8.0 будет поддерживать 'Cilk-Plus'. тот, кто знаком с этим расширением при использовании Intel компилятора, понимает, насколько это расширение необходимо для разработчиков многопоточных алгоритмов/программ.

третья новость состоит в том, что разрабы Qt пытаются определится в выборе MinGW для распространения в составе QtSDK-64bit. и я горд сообщить о том, что кандидатов всего двое: 1)сборки проекта MinGW-builds, 2)mingw-w64 персональная сборка Ruben`а. есть надежда, что сборки проекта MinGW-builds выйдут в массы :yahoo
Записан
Alex Custov
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2063


Просмотр профиля
« Ответ #28 : Сентябрь 03, 2012, 23:50 »

Такой вопрос... Есть ли смысл использовать данную сборку для обычной GUI программы, в которой нет ни вычислений ни сложной графики? Сейчас я использую стандартный mingw с gcc-4.6.2. Пока заметил, что после сборки компилятором i686-mingw32-gcc-4.6.3 размер Qt библиотек заметно вырос - около 1.5Мб суммарно на Gui+Core+Network+Sql. Тестировал также скорость загрузки программы - никакой разницы не заметил.
Записан
niXman
Гость
« Ответ #29 : Сентябрь 04, 2012, 00:03 »

Цитировать
смысл использовать данную сборку
какую конкретно?

Цитировать
размер Qt библиотек заметно вырос - около 1.5Мб
я, право, уже и не знаю как реагировать на подобные посты %)
ладно, когда вопрос стоИт в том, использовать Qt или wx - то в этом случае критерий типа "размер" - имеет вес. но при использовании такого монстра как Qt, экономить полтора метра - имхо, что-то с логикой не так %)
почему размер больше? - банально, из-за более агрессивной оптимизации. о чем собственно пишут в релизнотс к каждому выпуску компилятора.

Цитировать
использую стандартный mingw с gcc-4.6.2
мне он не подходит. в нем куча багов и недоделок. даже в 4.7.0 их хватало. даже в 4.7.0 были недоделки которые не позволяли мне реализовать некоторые задачи. только 4.7.1 позволил почувствовать мощь С++11.
конечно, инструмент выбирается по задаче, раз уж вам 4.6.2 хватает.

Цитировать
скорость загрузки
этим вы скорее тестировали скорость вашего харда, ибо динамический резолв символов в dll`ках таких размеров - та еще волокита %)


тут, есть вероятность, что я сильно предвзят.
но тролли же почему-то пришли к пониманию того, что дефолтный тулчейн дико устарел. им-то можно верить, как думаете?


[офтопик]
кстати, несколько часов назад, тролли обновили страничку тестирования: http://qt-project.org/wiki/MinGW-64-bit
MinGW-builds впереди.
[/офтопик]
« Последнее редактирование: Сентябрь 04, 2012, 00:14 от niXman » Записан
Страниц: 1 [2] 3 4 ... 10   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.278 секунд. Запросов: 22.