Модераторы: Daevaorn

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Сборки MinGW (GCC-win32/win64) 
:(
    Опции темы
boostcoder
Дата 30.7.2011, 20:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



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

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

Это сообщение отредактировал(а) boostcoder - 30.7.2011, 22:16
PM WWW   Вверх
Sahab
Дата 30.7.2011, 20:26 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 151
Регистрация: 1.9.2009

Репутация: нет
Всего: 3



boostcoder, кул...
ато в инете только офф.сборки да tdm, ито - 4.5.2
PM MAIL   Вверх
boostcoder
Дата 31.7.2011, 07:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



моя первая сборка стабильной версии gcc-4.6.1 для windows(т.е. MinGW) с полной поддержкой LTOOpenMPGraphitestd atomics и std threads.

скачать можно тут. бесплатно! smile 

при использовании классов из std threads, добавляйте опцию "-lpthread". в будущих сборках исправлю.


Это сообщение отредактировал(а) boostcoder - 31.7.2011, 17:08
PM WWW   Вверх
kemiisto
Дата 31.7.2011, 08:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Дикий Кот. =^.^=
****
Награды: 1



Профиль
Группа: Участник Клуба
Сообщений: 3292
Регистрация: 29.7.2007

Репутация: 2
Всего: 160



Цитата(Sahab @  30.7.2011,  19:26 Найти цитируемый пост)
ато в инете только офф.сборки да tdm, ито - 4.5.2

Неа. Есть ещё сборки от Equation Solution. Там и 4.6 и 4.7 есть.

boostcoder, а ты можешь запилить поддержку LTO (Link-Time Optimization)?


--------------------
PM MAIL WWW GTalk Jabber   Вверх
boostcoder
Дата 31.7.2011, 08:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



Цитата(kemiisto @  31.7.2011,  08:07 Найти цитируемый пост)
Есть ещё сборки от Equation Solution.

они иногда грешат тем, что собирают компилеры на Cygwin`е. на продукт производимый компилятором это конечно никак не сказывается, но все же, зачем эмуляция, если можно нативно?


Цитата(kemiisto @  31.7.2011,  08:07 Найти цитируемый пост)
можешь запилить поддержку LTO (Link-Time Optimization)?

в смысле "запилить" ? в этих сборках она есть. по твоему блогу проверял: http://kemiisto.blogspot.com/2010/09/lto.html

Это сообщение отредактировал(а) boostcoder - 31.7.2011, 08:20
PM WWW   Вверх
kemiisto
Дата 31.7.2011, 08:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Дикий Кот. =^.^=
****
Награды: 1



Профиль
Группа: Участник Клуба
Сообщений: 3292
Регистрация: 29.7.2007

Репутация: 2
Всего: 160



Цитата(boostcoder @  31.7.2011,  07:20 Найти цитируемый пост)
в этих сборках она есть.

boostcoder, извини, не посмотрел.


--------------------
PM MAIL WWW GTalk Jabber   Вверх
boostcoder
Дата 31.7.2011, 08:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



эм.. обнаружил такую неудобность...

если собирать коды из блога kemiisto с отключенным LTO, то линкер ругается на unresolved externals на pthread`ы.
если LTO включить - все ок.

получется что с отключенным LTO ничего не собрать.
ушел разбираться. сорри smile

Добавлено через 3 минуты и 27 секунд
OpenMP линкуется как надо.

и этот код тоже:
Код


#include <iostream>
#include <thread>
#include <mutex>
#include <condition_variable>

static const int cnt = 1024;

int main() {
   std::mutex mutex;
   {
      std::condition_variable cond;
      std::unique_lock<std::mutex> l(mutex);
      std::cout << "before std::condition_variable::wait_for()" << std::endl;
      cond.wait_for(l, std::chrono::milliseconds(1000));
      std::cout << "after std::condition_variable::wait_for()" << std::endl;
   }
   
   std::thread t1(
      [&mutex]() {
         for ( int idx = 0; idx < cnt; ++idx ) {
            std::this_thread::sleep_for(std::chrono::milliseconds(100));
            std::unique_lock<std::mutex> locker(mutex);
            std::cout << "id: " << std::this_thread::get_id() << ": Hello from thread!" << std::endl;
         }
      }
   );
   std::thread t2(
      [&mutex]() {
         for ( int idx = 0; idx < cnt; ++idx ) {
            std::unique_lock<std::mutex> locker(mutex);
            std::cout << "id: " << std::this_thread::get_id() << ": Hello from thread!" << std::endl;
         }
      }
   );
   std::thread t3(
      [&mutex]() {
         for ( int idx = 0; idx < cnt; ++idx ) {
            std::unique_lock<std::mutex> locker(mutex);
            std::cout << "id: " << std::this_thread::get_id() << ": Hello from thread!" << std::endl;
         }
      }
   );
   t1.join();
   t2.join();
   t3.join();
}



странно... что-то я с ключами configure намутил smile

Добавлено через 8 минут и 5 секунд
если отключить LTO и при этом добавить "-lpthread" - все равно линкер ругается. какие-то взаимоисключающие опции ведать указал..
PM WWW   Вверх
boostcoder
Дата 31.7.2011, 09:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



Цитата(boostcoder @  31.7.2011,  08:41 Найти цитируемый пост)
если собирать коды из блога kemiisto с отключенным LTO, то линкер ругается на unresolved externals на pthread`ы.

и -
Цитата(boostcoder @  31.7.2011,  08:41 Найти цитируемый пост)
OpenMP линкуется как надо.

и этот код тоже:

что-то не сходится...
PM WWW   Вверх
boostcoder
Дата 31.7.2011, 09:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



kemiisto, кстати. в сборках присутствует только g++. а ты, насколько мне известно, еще и фортран юзаешь.. в принципе он собирается с полпинка, так что могу включить. вообще не включал остальные ЯП чтоб архивы сильно не росли. там только жава 150Мб занимает не в сжатом виде..
PM WWW   Вверх
boostcoder
Дата 31.7.2011, 17:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



исправил.
качать тут.
PM WWW   Вверх
boostcoder
Дата 31.7.2011, 22:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



скажите, кто-то тестил последнюю сборку?
я хочу сообществу GNU-gcc предложить применить мой патч в основную ветку, для корректной сборки MinGW с поддержкой всех перечисленных фитчей.

буду благодарен если кто-то попробует собрать и потестить свои реальные проекты.
спасибо.
PM WWW   Вверх
boostcoder
Дата 6.8.2011, 21:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



залил новую сборку: gcc-4.7.0-snapshot-20110805

пофиксил:
1. Исправлена необходимость указывать "-lpthread" при линковке с использованием std::threads классов.
2. Исправлена ошибка линковки при использовании std::async.
3. Использована возможность указать способ линковки стандартных библиотек. По умолчанию, линкуются shared-версии. При указании линкеру флага "-static" - используются статические библиотеки.

Это сообщение отредактировал(а) boostcoder - 7.8.2011, 16:31
PM WWW   Вверх
Garese
Дата 12.8.2011, 23:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 12.8.2011

Репутация: нет
Всего: нет



Что то этим откомпилированные файлы минимум 4 Мб получаются.
PM MAIL   Вверх
boostcoder
Дата 13.8.2011, 02:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



Garese, вы невероятно последовательны. так, к примеру, вы сообщили о используемых вами технологиях и опциях компилятора/линкера. а вообще, больше похоже на тупой флуд...
PM WWW   Вверх
Garese
Дата 13.8.2011, 11:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 12.8.2011

Репутация: нет
Всего: нет



Код

#include <iostream>
using namespace std;
 
int main()
{
     cout<<"HELLO, WORLD!!!"<<endl;
     return 0;
}


g++ -c hello.cpp
g++ -o hello hello.o

На выходе файл 3.94Mb.

Если компилить официальной сборкой 4.5.2 или вашей gcc-4.7.0-snapshot-20110805, то все нормально.

А вообще, большое спасибо за сборку.

Это сообщение отредактировал(а) Garese - 13.8.2011, 11:11
PM MAIL   Вверх
boostcoder
Дата 13.8.2011, 11:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



Garese, линкеру, опцию "-s" добавьте же.
PM WWW   Вверх
Garese
Дата 13.8.2011, 11:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 12.8.2011

Репутация: нет
Всего: нет



Добавил, все равно великоват 600Kb.

Он по умолчанию -static подставляет походу, как это отключить?

Это сообщение отредактировал(а) Garese - 13.8.2011, 11:45
PM MAIL   Вверх
boostcoder
Дата 13.8.2011, 12:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



да.
4.6.1-release-lto_fixed+patched_for_nanosleep собран так, что использует только статическую линковку.
постараюсь пересобрать так чтоб была возможность указывать способ линковки.
PM WWW   Вверх
boostcoder
Дата 16.8.2011, 12:00 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



залил новую сборку: 4.7.0-snapshot-20110815.

Исправлен баг вызывающий "зацикливание" при использовании omp_set_num_threads().
При использовании классов из std::thread`s части, необходимо добавлять линкеру флаг "-static". Иначе получим исключение. Разбираюсь... 

Добавлено Добавлено @ 11:55
В планах:
1. перейти на использование pthreads-w32, вместо используемой сейчас winpthreads.
2. разобраться со сложностями сборки версий 4.6.1-4.6.2 возникшими в следствии изменения конфигурационных скриптов в офф. репозитарии.
PM WWW   Вверх
boostcoder
Дата 28.8.2011, 16:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



долгожданный релиз 4.6.1: http://code.google.com/p/mingw-builds/down...ase-20110828.7z
пора готовиться к релизу 4.6.2 smile
PM WWW   Вверх
boostcoder
Дата 30.8.2011, 15:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



пересобрал релиз 4.6.1: http://code.google.com/p/mingw-builds/downloads/list
исправлен последний известный баг("При использовании классов из std::thread`s части, необходимо добавлять линкеру флаг "-static". Иначе получим исключение.") путем сборки компилятора без использования динамических библиотек.

с этого момента, сборка версии 4.6.1 считается стабильной и завершенной.
с этого момента, по просьбам пользователей, буду заливать сборки в виде .7z и .zip архивов.

в архив добавлены следующие компоненты:
1. GNU make-3.82
2. libpython-2.7
3. GNU gdb-7.3a

Добавлено @ 16:06
нарвался на такую новость: Intel® Cilk™ Plus is now available in open-source and for GCC 4.7!
не понял, с версии 4.7.0, Cilk™ Plus будет входить в состав GCC по дефолту, как OpenMP, или как?... но технология невероятно востребована!

такими темпами, gcc вберет в себя все лучшее.

Это сообщение отредактировал(а) boostcoder - 30.8.2011, 16:14
PM WWW   Вверх
boostcoder
Дата 10.9.2011, 00:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



добавил новые сборки версии 4.7.0 содержащие ЯП: C, C++, Objective-C, Objective-C++, fortran: http://code.google.com/p/mingw-builds/downloads/list
планирую разобраться с проблемами сборки Java, и далее выкладывать сборки включающие в себя C, C++, Objective-C, Objective-C++, Fortran, Java.

Это сообщение отредактировал(а) boostcoder - 10.9.2011, 00:15
PM WWW   Вверх
boostcoder
Дата 17.9.2011, 22:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



добавил новые snapshot сборки.
отныне, все сборки будут включать в себя следующие ЯП: c, c++, objc, obj-c++, fortran.

в планах - разобраться со сборкой java.

PM WWW   Вверх
kemiisto
Дата 17.9.2011, 22:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Дикий Кот. =^.^=
****
Награды: 1



Профиль
Группа: Участник Клуба
Сообщений: 3292
Регистрация: 29.7.2007

Репутация: 2
Всего: 160



boostcoder, я правильно понимаю, что там нет 64-битных сборок?


--------------------
PM MAIL WWW GTalk Jabber   Вверх
boostcoder
Дата 17.9.2011, 22:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



kemiisto, да. но будут. сейчас это приоритетная задача.

Добавлено @ 22:41
вообще, в планах, создать инсталлятор, в котором юзер сможет выбрать:
1. способ реализации исключений(sjlj/dwarf)
2. версию компилятора.
3. x86/x86_64 как цель, так и хост архитектуры.
4. список необходимых ему предкомпилированных библиотек. (да. юзеру не нужно будет шарахаться по инету в поисках собранной библиотеки, или маять свой моцг в попытках собрать ее)
5. IDE. планирую следующие: QtCreator, NetBeans, Code::Blocks, Dev-C++, wxDev-C++. т.е. получится своего рода portable версия среды разработки со всем перечисленным.

по этому, проект переезжает на sf.net, ибо там нет ограничения на пространство для проекта, плюс, больше возможностей по управлению проектом(в отличии от гуглкода).
сейчас занимаюсь следующими задачами:
1. переписываю скрипты системы сборки.
2. пытаюсь разобраться со сборкой java.
3. пытаюсь разобраться со сборкой под x86 и x86_64 архитектуры. как для хоста, так и для цели.
4. дописываю скрипты для сборки библиотек.
5. разбираюсь с NSIS инсталлятором.

Это сообщение отредактировал(а) boostcoder - 17.9.2011, 22:42
PM WWW   Вверх
kemiisto
Дата 17.9.2011, 22:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Дикий Кот. =^.^=
****
Награды: 1



Профиль
Группа: Участник Клуба
Сообщений: 3292
Регистрация: 29.7.2007

Репутация: 2
Всего: 160



boostcoder, понял. Интересно будет взглянуть. 

А сложно под вынду собирать? MSYS, конечно, как минимум, нужен...


--------------------
PM MAIL WWW GTalk Jabber   Вверх
boostcoder
Дата 17.9.2011, 22:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



Цитата(kemiisto @  17.9.2011,  22:44 Найти цитируемый пост)
А сложно под вынду собирать?

теперь нет. но по началу, когда я только задался этой целью, у меня ушло около месяца на попытки... нет, я не каждый день и не целый день этим занимался. но в сумме, все равно очень много времени ушло на эти попытки. и это я пробовал собрать в венде, на виртуалке. и, из-за того что в венде приходилось ждать по 8 часов чтоб увидеть очередную ошибку, я решил попробовать собирать в лине, кросскомпилятором. и да, помогло. в лине, все это дело собиралось в двое быстрее. в общем я однажды все таки собрал свой первый мингв. но без OpenMP+Graphite+LTO+std_threads. но кому он такой был нужен? в инете полно подобных сборок smile т.е. еще немало времени ушло на это. потом, осознав неудобность того, что в лине не запустишь тесты, а переносить на венду недособранный компилятор ооочень не просто, я все же решил второй раз попытаться собрать его нативно. однажды таки получилось.

так что, в сумме, я бы сказал, месяца четыре попыток...
и да, без MSYS никуда.

Это сообщение отредактировал(а) boostcoder - 17.9.2011, 23:24
PM WWW   Вверх
Sahab
Дата 19.9.2011, 22:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 151
Регистрация: 1.9.2009

Репутация: нет
Всего: 3



А кто какими цветовыми стилями пользуется?...
в QtCreator юзаю такое:
http://s2.ipicture.ru/uploads/20110919/vjEVC21S.png

з.ы. кто-нить знает где можно для KDevelop/Kate найти? 


Это сообщение отредактировал(а) Sahab - 19.9.2011, 22:36
PM MAIL   Вверх
borisbn
Дата 20.9.2011, 06:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 4875
Регистрация: 6.2.2010
Где: Ростов-на-Дону

Репутация: 22
Всего: 135



Sahab, вот это щаз в тему было (про раскраску критера). Да? smile 


--------------------
Женщины отличаются от программистов тем, что у них чары состоят из стрингов
PM MAIL Jabber   Вверх
Sahab
Дата 20.9.2011, 08:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 151
Регистрация: 1.9.2009

Репутация: нет
Всего: 3



"Компиляторы и IDE(!) для C++"
какбэ понимаю, что не совсем то. Но к иде же)
PM MAIL   Вверх
newbee
Дата 20.9.2011, 08:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бревно
**


Профиль
Группа: Участник
Сообщений: 703
Регистрация: 24.8.2011

Репутация: 4
Всего: 19



Sahab, kate: Settings -> Configure Kate -> Editor Component -> Fonts & Colors.


--------------------
You're face to face
With man who sold the world
PM   Вверх
Sahab
Дата 20.9.2011, 09:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 151
Регистрация: 1.9.2009

Репутация: нет
Всего: 3



имелось в виду не самостоятельно набивать а готовые...
где их найти в файловой и в настройках и сам знаю.
PM MAIL   Вверх
newbee
Дата 20.9.2011, 12:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бревно
**


Профиль
Группа: Участник
Сообщений: 703
Регистрация: 24.8.2011

Репутация: 4
Всего: 19



Цитата(Sahab @  20.9.2011,  10:06 Найти цитируемый пост)
имелось в виду не самостоятельно набивать а готовые...
где их найти в файловой и в настройках и сам знаю. 
Настроить цвета по готовому шаблону - дело пяти минут. Боюсь такому ленивцу предлагать гуглить, но все же: "kate color scheme", в т.ч. несколько есть на kde-look.


--------------------
You're face to face
With man who sold the world
PM   Вверх
Sahab
Дата 20.9.2011, 14:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 151
Регистрация: 1.9.2009

Репутация: нет
Всего: 3



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

Цитата(newbee @  20.9.2011,  12:58 Найти цитируемый пост)
kde-look. 
 бывал не только тут.

з.ы. не скажу что в гугле нет... но толкового совсем мало.  



Это сообщение отредактировал(а) Sahab - 20.9.2011, 14:37
PM MAIL   Вверх
boostcoder
Дата 26.9.2011, 11:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



залил пререлиз сборки версии 4.6.2. собственно, эта сборка является подготовительной к релизу 4.6.2, ибо сборка этой ветки осложнена правкой кучи конфигов т.к. патчи в эту ветку не принимаются.
релиз ожидается к концу этой недели. конечный список багфиксов так же пока не сформирован. какие-либо нововведения(в сравнении 4.6.1) вряд ли будут добавлены. зато исправлено больше ошибок. к тому же, мне известно только одно существенное отличие от версий 4.7.0 - в последнем, OpenMP-3.1 которая предоставляет task-based параллелизм. что, конечно, добавит еще больше возможностей применять OpenMP.

всем спасибо.

http://code.google.com/p/mingw-builds/downloads/list
PM WWW   Вверх
boostcoder
Дата 4.10.2011, 10:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



в списке рассылки GCC прошла информация о том, что изменилась лицензия компилятора языка D. и сейчас, она позволяет использовать его коды под лицензиями GPL/LGPL. сейчас идет обсуждение о принятии в GCC фронтэнда D на постоянную основу.
я на D не пишу, но возможно кому-то эта новость покажется полезной. мне же, интересно, соберется ли фронтэнд в венде smile 
PM WWW   Вверх
boostcoder
Дата 5.10.2011, 18:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



в течении прошлой недели были реализованы две новые возможности:
1. explicit override control.
2. non-static data member initializers.

залил на http://code.google.com/p/mingw-builds/downloads/
PM WWW   Вверх
boostcoder
Дата 19.10.2011, 10:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



залил новые сборки версий 4.6.2 и 4.7.0.
исправлен SEGFOLT при использовании std::this_thread::yield().

в скором времени выйдет первая версия mingw-env(так далее будет называться проект) включающая:
  • компилятор MinGW
  • IDE Code::Block, Dev-C++, wxDev-C++, QtCreator
  • множество предкомпилированных библиотек
все из перечисленного будет доступно при помощи онлайн-инсталлятора.

Это сообщение отредактировал(а) boostcoder - 19.10.2011, 10:45
PM WWW   Вверх
boostcoder
Дата 28.10.2011, 10:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



Вчера состоялся релиз компилятора GCC версии 4.6.2, в котором проведена работа по исправлению ошибок, регрессивных изменений и проблем с совместимостью. С момента выхода прошлой версии отмечено 115 исправлений, большинство из которых связано с устранением внесенных ранее регрессивных изменений и с улучшением поддержки спецификаций C++11. Исходные тексты компилятора можно загрузить с сайта проекта или с его зеркал.

Сборки MinGW на базе GCC-4.6.2 вы уже сейчас можете скачать на странице проекта.
Следующее обновление GCC 4.6.3 ожидается в феврале.

Это сообщение отредактировал(а) boostcoder - 28.10.2011, 11:03
PM WWW   Вверх
boostcoder
Дата 22.11.2011, 10:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



залил новые сборки тестовой ветки 4.7.0 в которых впервые реализована технология Transactional Memory(кстати Intel эту фитчу реализовал довольно давно). полагаю, эта фитча станет невероятно востребована в паре с OpenMP, что позволит сделать мир многопоточных программ проще smile отдельно хочется поблагодарить Red Hat inc. за "подаренную" реализацию Transactional Memory, которая, к тому же, всего три месяца назад "подарила" реализацию OpenMP-3.1.

скачать версии GCC для windows вы как всегда можете скачать тут. совершенно бесплатно smile 

Это сообщение отредактировал(а) boostcoder - 22.11.2011, 10:12
PM WWW   Вверх
boostcoder
Дата 30.11.2011, 19:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



занимаюсь сборкой для x86_64 архитектуры, и возникли такие вопросы:
1. нужна ли сборка хост-x86_64 - цель-x86_64 ? или же достаточно будет хост-х86 - цель-х86_64? ибо последняя сможет работать как на х86 так и на х86_64.
2. есть ли смысл собирать отдельные сборки для х86 и х86_64 хостов? или же собрать хост-х86 и мультицель х86/х86_64 указываемую при помощи стандартных опций "-m32" "-m64" ?

Это сообщение отредактировал(а) boostcoder - 30.11.2011, 19:50
PM WWW   Вверх
bsa
Дата 1.12.2011, 00:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 63
Всего: 196



boostcoder, имхо, лучше второй вариант.
для начала делай хост x86. Потом, если попросят, всегда можно собрать еще и x86_64.
PM   Вверх
boostcoder
Дата 10.12.2011, 01:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



добавил новые сборки в которых реализованы Delegating Constructors и Templates Aliases.

качаем. тестим. осваиваем.

PM WWW   Вверх
Trotil
Дата 10.12.2011, 09:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 36
Регистрация: 31.7.2005

Репутация: нет
Всего: нет



Есть ли плагин для Notepad++, чтобы список функций, классов, методов был доступен отдельно от кода?


Это сообщение отредактировал(а) Trotil - 10.12.2011, 09:01
PM MAIL   Вверх
boostcoder
Дата 24.12.2011, 11:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



залил новые сборки версии 4.7.0.
разрабатываемая ветка 4.7.0 перешла в stage 3(bug fixes and docs only). все что не было в ней реализовано(а это совсем не много), будет реализовано в ветке 4.8.0.
релиз 4.7.0 обещают в феврале, после чего, ветка перейдет в stage 4(regression fixes and optimization). 4.7.1 обещают в мае.

качать тут.

Это сообщение отредактировал(а) boostcoder - 24.12.2011, 11:18
PM WWW   Вверх
boostcoder
Дата 10.1.2012, 10:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



залил пререлизные сборки 4.6.3.
с этого момента, сборки поддерживают как динамическую, так и статическую линковку. сделано это для соответствия общему принципу. в связи с этим, при использовании std_threads/std_atomics, добавляйте опцию "-static" при линковке. иначе получите сегфолт. проблема известная, и девелоперы обещают ее пофиксить.

зы
Цитата(boostcoder @  24.12.2011,  11:17 Найти цитируемый пост)
релиз 4.7.0 обещают в феврале, после чего, ветка перейдет в stage 4(regression fixes and optimization).

оказывается, я не правильно понял. разрабатываемая ветка сначала перейдет в stage 4, и после, в феврале, ожидается релиз.
в stage 4 ветка уже перешла.

Это сообщение отредактировал(а) boostcoder - 10.1.2012, 10:20
PM WWW   Вверх
boostcoder
Дата 17.1.2012, 08:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



с гордостью хочу сообщить о том, что исправил последний мне известный баг MinGW, вынуждающий использовать статическую линковку при использовании std_threads!
некоторое время я (на пару с вами) буду тестить этот fix, после чего закоммичу патч.

так же, исправил баг LTO в сборках 4.7.0, который не давал мне покоя уже 4 месяца.

выложил snapshot сборки 4.7.0.
готовлюсь к релизу smile 

качать тут.

Это сообщение отредактировал(а) boostcoder - 19.1.2012, 19:25
PM WWW   Вверх
boostcoder
Дата 19.1.2012, 13:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



не к холивару будет пост, но только что в списке рассылки GCC были опубликованы сравнительные результаты тестирования компиляторов проводимые Willus.com.
в тестировании принимали участие компиляторы: MinGW (gcc 4.6.3), Intel 2011, Microsoft 2010 Visual C/C++ Express, и др.(Tiny CC, Digital Mars, MinGW (gcc 3.4.2)). использовались следующие опции. тестировались такие проекты как: BW1D, BZIP2, CRAFTY, K2PDFOPT, LAME, MESHER, MODEL3D, RESIZER, TRANSCEND, X264. тесты проводились в таком окружении:
Цитата

Intel Core-i3/i5/i7 chips are quite prevalent now, and I'm lazy, so, with no disrespect intended towards AMD and other non-Intel x86 CPUs, I ran the benchmarks only on my home PC, a 2010-vintage system with a Core i5-670 CPU that turbo boosts to 3.73 GHz. My motherboard is an Asus P7H57D-V EVO with 16 GB of DDR-3 1333 MHz RAM. The O/S is 64-bit Windows 7 Ultimate.

в пяти из десяти тестов GCC-4.6.3 незначительно отставал от MSVC.
усредненное значение пересчитанное мною таково:
GCC - 15.13
MSVC - 15.12

т.е. MSVC на одну сотую секунды быстрее из суммы всех времен тестов. а Intel рвет всех.

для остальных компиляторов не считал.

Up.
хотя в результатах тестирования, такие результаты:
gcc-4.6.3-32: 1.38
gcc-4.6.3-64: 1.18
Intel-11-32: 1.21
Intel-11-64: 1.10
msvc2010: 1.59

тут можно скорее сказать, что gcc идет в ногу с intel, чем в ногу с msvc ;)


Это сообщение отредактировал(а) boostcoder - 19.1.2012, 19:31
PM WWW   Вверх
borisbn
Дата 19.1.2012, 19:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 4875
Регистрация: 6.2.2010
Где: Ростов-на-Дону

Репутация: 22
Всего: 135



Несколько раз перечитал описание данного бенчмарка - ничего не понял. Вернее не понял что это за параметр normalized run time
Вот это
Цитата
This is computed by dividing all of the run times by the best run time.

перевести то перевёл, но что это значит - не понял. Зачем делить все времена (и что значит все??? сумму всех?) на лучший результат ?
Можешь разжевать для тупого ?


--------------------
Женщины отличаются от программистов тем, что у них чары состоят из стрингов
PM MAIL Jabber   Вверх
newbee
Дата 19.1.2012, 19:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бревно
**


Профиль
Группа: Участник
Сообщений: 703
Регистрация: 24.8.2011

Репутация: 4
Всего: 19



Цитата(borisbn @  19.1.2012,  20:05 Найти цитируемый пост)
Можешь разжевать для тупого ? 
Можешь считать это средним результатом после проведения серии экспериментов.

Добавлено через 2 минуты и 30 секунд
Гцц оказался еще и самым тормозным в плане времени компиляции. Хотя это уже давно известно.


--------------------
You're face to face
With man who sold the world
PM   Вверх
boostcoder
Дата 19.1.2012, 19:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



Цитата(newbee @  19.1.2012,  19:13 Найти цитируемый пост)
Можешь считать это средним результатом после проведения серии экспериментов.

угу.

Цитата(newbee @  19.1.2012,  19:13 Найти цитируемый пост)
Гцц оказался еще и самым тормозным в плане времени компиляции. Хотя это уже давно известно.

не нужно быть голословной.
все дело в том, что MSVC как и Intel производят сборку в несколько потоков. по умолчанию - сколько ядер. а gcc, точнее make.exe в венде работает в один поток. т.е. опция -j не дает эффекта ;)
PM WWW   Вверх
borisbn
Дата 19.1.2012, 19:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 4875
Регистрация: 6.2.2010
Где: Ростов-на-Дону

Репутация: 22
Всего: 135



Цитата(newbee @  19.1.2012,  19:13 Найти цитируемый пост)
Можешь считать это средним результатом после проведения серии экспериментов.

скорее это говорит о разбросе в серии тестов. вот взять, например, первый тест.
Цитата
intel11    X    X    64-bit    321    3.55    17.1    1.00

и
Цитата
tcc925       32-bit    21    3.99    91.1    5.31

вроде бы и время работы у tcc925 бешенное (91,1) и этот злополучный параметр плохой (5,31). Но ведь если время выполнения 91,1 сек, а отношение этого времени к лучшему = 5,3, то лучшее время 91,1 / 5,31 = 17,2. А у интела - 17,1 / 1,0 = 17,1.
Нифига не понимаю.  smile 


--------------------
Женщины отличаются от программистов тем, что у них чары состоят из стрингов
PM MAIL Jabber   Вверх
boostcoder
Дата 19.1.2012, 19:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



Цитата(borisbn @  19.1.2012,  19:29 Найти цитируемый пост)
tcc925

на сколько я помню, это вообще Си компилятор, при том не оптимизирующий. нафег его вообще приплели к тестам?

Цитата(borisbn @  19.1.2012,  19:29 Найти цитируемый пост)
Нифига не понимаю.

в моих расчетах, я суммировал время работы теста(не компиляции) и поделил на кол-во тестов.
PM WWW   Вверх
newbee
Дата 19.1.2012, 19:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бревно
**


Профиль
Группа: Участник
Сообщений: 703
Регистрация: 24.8.2011

Репутация: 4
Всего: 19



Цитата(borisbn @  19.1.2012,  20:29 Найти цитируемый пост)
Нифига не понимаю. 
Лучшее время - 17.1, отношение времени тцц к лучшему равно 5.3. Вообще я плохо первый ответ дала, на самом деле это показатель того, во сколько раз одно хуже лучшего. Вот интел - лучший, гцц хуже в полтора раза, тцц - в пять.

Добавлено через 3 минуты и 21 секунду
Цитата(boostcoder @  19.1.2012,  20:19 Найти цитируемый пост)
не нужно быть голословной.
Я знаю про этот баг, но гцц все равно тормоз в соотношении качество/скорость компиляции.

Цитата(boostcoder @  19.1.2012,  20:33 Найти цитируемый пост)
на сколько я помню, это вообще Си компилятор, при том не оптимизирующий. нафег его вообще приплели к тестам?
Ога. Он еще и интерпретировать не компилируя умеет - это главная его фишка. А к тестам его приплели просто чтобы показать насколько простое решение хуже продвинутых технологий. В пять раз всегоsmile


--------------------
You're face to face
With man who sold the world
PM   Вверх
boostcoder
Дата 19.1.2012, 19:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



newbee, нет, ты чтоб не потроллить о наболевшем, не можешь.
PM WWW   Вверх
newbee
Дата 19.1.2012, 19:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бревно
**


Профиль
Группа: Участник
Сообщений: 703
Регистрация: 24.8.2011

Репутация: 4
Всего: 19



Цитата(boostcoder @  19.1.2012,  20:49 Найти цитируемый пост)
newbee, нет, ты чтоб не потроллить о наболевшем, не можешь. 
Дохтур, у меня ничего не болит, вы о чем вообще? ;;я честно не поняла, где троллинг.

Добавлено через 8 минут и 11 секунд
Я еще чуть чуть почитала про тцц и повнимательней посмотрела статистику, так этот тцц быстрее всех компилирует - чем не повод засунуть его в эксперимент?


--------------------
You're face to face
With man who sold the world
PM   Вверх
borisbn
Дата 20.1.2012, 08:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 4875
Регистрация: 6.2.2010
Где: Ростов-на-Дону

Репутация: 22
Всего: 135



Сорри за тупизм. Вот говорили же мне старшие товарищи, что утро вечера мудреннее... Вот это я вчера протупил. Решил (почему-то), что для одного компилятора делалась серия экспериментов и этот злополучный коэффициент - это среднее время делить на лучшее среди этих экспериментов, а на самом деле это - время работы кода этого компилятора делить на лучшее время среди компиляторов. Теперь ясно.


--------------------
Женщины отличаются от программистов тем, что у них чары состоят из стрингов
PM MAIL Jabber   Вверх
boostcoder
Дата 1.2.2012, 11:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



скажите, кому либо в моих сборках, нужны ли Objective-C, Objective-C++, Fortran? хочу их исключить. за ненадобностью.

спасибо.

PM WWW   Вверх
boostcoder
Дата 4.2.2012, 14:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



Objective-C и Objective-C++ были исключены за ненадобностью.

залил новые сборки версий 4.6.3-prerelease и 4.7.0-snapshot.

PM WWW   Вверх
boostcoder
Дата 5.2.2012, 15:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



добавил новые сборки 4.6.2-release с фиксом динамической линковки при использовании std_threads.

PM WWW   Вверх
boostcoder
Дата 2.3.2012, 00:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



Вчера, 1 Марта, состоялся релиз компилятора GCC версии 4.6.3, являющийся очередным баг-фикс релизом ветки компиляторов 4.6.х

Было исправлено более 70 багов.
Полный список вы можете найти тут.

Оригинальная новость.

P.S.
Уже сейчас вы можете скачать MinGW на базе gcc-4.6.3 из моих сборок.
Комплект состоящий из mingw-4.6.3+boost-1.49.0, у меня в подписи.

Это сообщение отредактировал(а) boostcoder - 2.3.2012, 00:08
PM WWW   Вверх
Alca
Дата 2.3.2012, 11:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3993
Регистрация: 14.6.2006

Репутация: 7
Всего: 50



Когда будут сборки mingw64 ? Можешь сделать для версии 4.6.3 ?


--------------------
PM WWW ICQ Skype Jabber   Вверх
boostcoder
Дата 2.3.2012, 11:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



Цитата(Alca @  2.3.2012,  11:20 Найти цитируемый пост)
Когда будут сборки mingw64 ?

эх... руки не доходят.
по возможности, на выходных постараюсь.
PM WWW   Вверх
boostcoder
Дата 2.3.2012, 22:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



сегодня, основная ветка разработки GCC (trunk), форкнулась в gcc-4.7-branch. это означает, что релиз gcc-4.7.0 состоится через неделю-другую. релиз-кандидат соберу на днях.
начата работа над gcc-4.8.0.

Это сообщение отредактировал(а) boostcoder - 2.3.2012, 22:12
PM WWW   Вверх
bsa
Дата 2.3.2012, 22:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 63
Всего: 196



boostcoder, да ладно? Они что ли собираются нестабильную версию выпустить? Или у них trunk стабильная?
PM   Вверх
boostcoder
Дата 2.3.2012, 22:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



Цитата(bsa @  2.3.2012,  22:19 Найти цитируемый пост)
trunk стабильная?

trunk становится стабильным по достижению stage4. он достигнут. trunk форкнулся. и с этого момента trunk считается нестабильным, снова.
PM WWW   Вверх
Randajad
Дата 15.3.2012, 13:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 295
Регистрация: 15.3.2012

Репутация: 8
Всего: 8



std::regex запилили бы лучше.
PM MAIL   Вверх
borisbn
Дата 15.3.2012, 13:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 4875
Регистрация: 6.2.2010
Где: Ростов-на-Дону

Репутация: 22
Всего: 135



Randajad, а что не так с регексами ?


--------------------
Женщины отличаются от программистов тем, что у них чары состоят из стрингов
PM MAIL Jabber   Вверх
boostcoder
Дата 15.3.2012, 13:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



Цитата(Randajad @  15.3.2012,  13:22 Найти цитируемый пост)
std::regex запилили бы лучше.

полагаю, это M$ специфик. в линуксе-то он работает. попробую разобраться на досуге.
PM WWW   Вверх
borisbn
Дата 15.3.2012, 13:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 4875
Регистрация: 6.2.2010
Где: Ростов-на-Дону

Репутация: 22
Всего: 135





--------------------
Женщины отличаются от программистов тем, что у них чары состоят из стрингов
PM MAIL Jabber   Вверх
boostcoder
Дата 15.3.2012, 13:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



borisbn, говорят что не работает. кто-то говорит что тупо сегфолтит. я пока не проверял.

Добавлено через 41 секунду
Цитата(borisbn @  15.3.2012,  13:56 Найти цитируемый пост)
кажется понял...

хм.. а когда-то оно работало. в линуксе точно.
PM WWW   Вверх
Randajad
Дата 15.3.2012, 14:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 295
Регистрация: 15.3.2012

Репутация: 8
Всего: 8



Не сегфолтит.
На простом std::regex r("\\d"); кидает std::regex_error.

Это сообщение отредактировал(а) Randajad - 15.3.2012, 14:02
PM MAIL   Вверх
boostcoder
Дата 25.3.2012, 00:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



Всем привет.

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

Итак...
До сих пор, проект предоставлял сборки с двумя типами реализации исключений: 1)dwarf, 2)sjlj(12).
Сборки использующие 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 хоста возникли некоторые сложности. На страницу проекта пока не выгружал. Хочу одновременно.

Всем спасибо.


Это сообщение отредактировал(а) boostcoder - 25.3.2012, 00:37
PM WWW   Вверх
Randajad
Дата 25.3.2012, 18:02 (ссылка)    | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 295
Регистрация: 15.3.2012

Репутация: 8
Всего: 8



Исправьте в первом посту пожалуйста: пишется CodeBlocks, а не CodeBlock. smile

Это сообщение отредактировал(а) Randajad - 25.3.2012, 18:03
PM MAIL   Вверх
boostcoder
Дата 26.3.2012, 23:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



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

PM WWW   Вверх
boostcoder
Дата 29.3.2012, 05:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



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

жду отзывов smile

PM WWW   Вверх
borisbn
Дата 29.3.2012, 08:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 4875
Регистрация: 6.2.2010
Где: Ростов-на-Дону

Репутация: 22
Всего: 135



boostcoder, спасибо. Ждём 4.7.0 на LWS  smile 


--------------------
Женщины отличаются от программистов тем, что у них чары состоят из стрингов
PM MAIL Jabber   Вверх
boostcoder
Дата 29.3.2012, 10:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



Цитата(borisbn @  29.3.2012,  08:38 Найти цитируемый пост)
4.7.0 на LWS

кстати да. совсем забыл %)

готово: http://liveworkspace.org/code/6331a929ef26...56bf1839fb8065d
Цитата

gcc version: 4.7.0
boost version: 1_50



Это сообщение отредактировал(а) boostcoder - 29.3.2012, 21:12
PM WWW   Вверх
Randajad
Дата 8.4.2012, 12:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 295
Регистрация: 15.3.2012

Репутация: 8
Всего: 8



http://liveworkspace.org/code/6f1ea9af8809...10e6af33c05cebf
Не работаэ. Причем в заголовках функции есть.

Взято с:
http://en.cppreference.com/w/cpp/io/manip/get_time

Это сообщение отредактировал(а) Randajad - 8.4.2012, 12:22
PM MAIL   Вверх
boostcoder
Дата 8.4.2012, 14:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



походу недореализовано.
PM WWW   Вверх
boostcoder
Дата 12.4.2012, 13:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



gcc-4.8.x будет формировать вывод информации о ошибках и варнингах по мотиву CLang. но говорят что даже лучше чем CLang.
в принципе, эта фишка уже сейчас перенесена в trunk. на неделе соберу, поглядеть.


Это сообщение отредактировал(а) boostcoder - 12.4.2012, 13:37
PM WWW   Вверх
borisbn
Дата 12.4.2012, 14:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 4875
Регистрация: 6.2.2010
Где: Ростов-на-Дону

Репутация: 22
Всего: 135



Цитата(boostcoder @  12.4.2012,  13:36 Найти цитируемый пост)
 по мотиву CLang

стыдно признаться, но никогда не видел CLang (да и слышал-то немного)... поэтому, можешь дать ссылку на их способ отображения ?
Только не на сам CLang (его-то я найти смогу)))
Спасибо.


--------------------
Женщины отличаются от программистов тем, что у них чары состоят из стрингов
PM MAIL Jabber   Вверх
boostcoder
Дата 12.4.2012, 14:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



читай ветку: http://gcc.gnu.org/ml/gcc/2012-04/msg00477.html
там примеры есть.

PM WWW   Вверх
boostcoder
Дата 17.4.2012, 13:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



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

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

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

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

Всем спасибо!

PM WWW   Вверх
boostcoder
Дата 18.4.2012, 05:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



PM WWW   Вверх
Randajad
Дата 26.4.2012, 12:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 295
Регистрация: 15.3.2012

Репутация: 8
Всего: 8



Цитата

s — вывод строки с нулевым завершающим байтом; если модификатор длины — l, выводится строка wchar_t*. В Windows значения типа s зависят от типа используемых функций. Если используется семейство printf функций, то s обозначает строку char*. Если используется семейство wprintf функций, то s обозначает строку wchar_t*.
S — то же самое что и s с модификатором длины l; В Windows значения типа S зависит от типа используемых функций. Если используется семейство printf функций, то S обозначает строку wchar_t*. Если используется семейство wprintf функций, то S обозначает строку char*.


© Педивикия.

Однако в реальности %S в wprintf все также обозначает wchar_t * строку, а %s - все так же обычную char *.
GCC 4.7.

Это сообщение отредактировал(а) Randajad - 28.4.2012, 08:26
PM MAIL   Вверх
Randajad
Дата 29.4.2012, 14:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 295
Регистрация: 15.3.2012

Репутация: 8
Всего: 8



__attribute__((packed))
Не работает на структурах на GCC 4.8, на других не тестил. Связи с чем сборка крупных прожэктов затруднена этим компилятором.
PM MAIL   Вверх
Randajad
Дата 29.4.2012, 14:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 295
Регистрация: 15.3.2012

Репутация: 8
Всего: 8



Методом тестов установлено: от 4.6.2 по ссылкам выше до 4.6.4 работает без проблем, начиная с 4.7.0 - баг.
PM MAIL   Вверх
alexvs11
Дата 29.4.2012, 14:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


hell is here
**


Профиль
Группа: Участник
Сообщений: 518
Регистрация: 21.8.2010

Репутация: 6
Всего: 10



Цитата(boostcoder @  12.4.2012,  13:36 Найти цитируемый пост)
gcc-4.8.x будет формировать вывод информации о ошибках и варнингах по мотиву CLang. но говорят что даже лучше чем CLang.в принципе, эта фишка уже сейчас перенесена в trunk. на неделе соберу, поглядеть.

это же замечательно!
честно говоря периодически не осиливая сообщения об ошибках gcc - скармливаю программу clang'у smile 
PM MAIL   Вверх
boostcoder
Дата 29.4.2012, 14:53 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



не ты один ;)

начальную стадию уже сейчас можно посмотреть в версиях 4.8.0: https://sourceforge.net/projects/mingwbuild...ows-host/4.8.0/

PM WWW   Вверх
Randajad
Дата 29.4.2012, 15:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 295
Регистрация: 15.3.2012

Репутация: 8
Всего: 8



Да, в гцц вырвиглазные ошибки.
Кстати разницы в 4.8 по сравнению с другими не заметил. smile
PM MAIL   Вверх
boostcoder
Дата 29.4.2012, 15:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



Randajad, покажи примеры для 4.8.0 и той, с которой сравниваешь.
PM WWW   Вверх
Randajad
Дата 29.4.2012, 15:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 295
Регистрация: 15.3.2012

Репутация: 8
Всего: 8



4.8.
Цитата

In file included from Q:\Tools\CodeBlocks\Custom\include/boost/program_options/value_semantic.hpp:14:0,
                 from Q:\Tools\CodeBlocks\Custom\include/boost/program_options/options_description.hpp:13,
                 from Q:\Tools\CodeBlocks\Custom\include/boost/program_options.hpp:15,
                 from Q:\Tools\CodeBlocks\Custom\include/lib/options.h:2,
                 from Q:\Work\rwork\nedtest\main.cpp:1:
Q:\Tools\CodeBlocks\Custom\include/boost/lexical_cast.hpp: In instantiation of 'bool boost::detail::lexical_stream_limited_src<CharT, Traits, RequiresStringbuffer>::shr_using_base_class(InputStreamable&) [with InputStreamable = main(int, const char**)::<anonymous struct>; CharT = wchar_t; Traits = std::char_traits<wchar_t>; bool RequiresStringbuffer = false]':
Q:\Tools\CodeBlocks\Custom\include/boost/lexical_cast.hpp:1704:90:   required from 'bool boost::detail::lexical_stream_limited_src<CharT, Traits, RequiresStringbuffer>::operator>>(InputStreamable&) [with InputStreamable = main(int, const char**)::<anonymous struct>; CharT = wchar_t; Traits = std::char_traits<wchar_t>; bool RequiresStringbuffer = false]'
Q:\Tools\CodeBlocks\Custom\include/boost/lexical_cast.hpp:1920:17:   required from 'static Target boost::detail::lexical_cast_do_cast<Target, Source>::lexical_cast_impl(const Source&) [with Target = main(int, const char**)::<anonymous struct>; Source = std::basic_string<wchar_t>]'
Q:\Tools\CodeBlocks\Custom\include/boost/lexical_cast.hpp:2087:50:   required from 'Target boost::lexical_cast(const Source&) [with Target = main(int, const char**)::<anonymous struct>; Source = std::basic_string<wchar_t>]'
Q:\Tools\CodeBlocks\Custom\include/boost/program_options/detail/value_semantic.hpp:88:13:   required from 'void boost::program_options::validate(boost::any&, const std::vector<std::basic_string<charT> >&, T*, long int) [with T = main(int, const char**)::<anonymous struct>; charT = wchar_t]'
Q:\Tools\CodeBlocks\Custom\include/boost/program_options/detail/value_semantic.hpp:169:13:   required from 'void boost::program_options::typed_value<T, charT>::xparse(boost::any&, const std::vector<std::basic_string<charT> >&) const [with T = main(int, const char**)::<anonymous struct>; charT = wchar_t]'
Q:\Work\rwork\nedtest\main.cpp:23:1:   required from here
Q:\Tools\CodeBlocks\Custom\include/boost/lexical_cast.hpp:1544:29: error: cannot bind 'std::basic_istream<wchar_t>' lvalue to 'std::basic_istream<wchar_t>&&'
                 Traits::eof();
                             ^


4.6.
Цитата

In file included from Q:\Tools\CodeBlocks\Custom\include/boost/program_options/value_semantic.hpp:14:0,
                 from Q:\Tools\CodeBlocks\Custom\include/boost/program_options/options_description.hpp:13,
                 from Q:\Tools\CodeBlocks\Custom\include/boost/program_options.hpp:15,
                 from Q:\Tools\CodeBlocks\Custom\include/lib/options.h:2,
                 from Q:\Work\rwork\nedtest\main.cpp:1:
Q:\Tools\CodeBlocks\Custom\include/boost/lexical_cast.hpp: In member function 'bool boost::detail::lexical_stream_limited_src<CharT, Traits, RequiresStringbuffer>::shr_using_base_class(InputStreamable&) [with InputStreamable = main(int, const char**)::<anonymous struct>, CharT = wchar_t, Traits = std::char_traits<wchar_t>, bool RequiresStringbuffer = false]':
Q:\Tools\CodeBlocks\Custom\include/boost/lexical_cast.hpp:1704:90:   instantiated from 'bool boost::detail::lexical_stream_limited_src<CharT, Traits, RequiresStringbuffer>::operator>>(InputStreamable&) [with InputStreamable = main(int, const char**)::<anonymous struct>, CharT = wchar_t, Traits = std::char_traits<wchar_t>, bool RequiresStringbuffer = false]'
Q:\Tools\CodeBlocks\Custom\include/boost/lexical_cast.hpp:1920:17:   instantiated from 'static Target boost::detail::lexical_cast_do_cast<Target, Source>::lexical_cast_impl(const Source&) [with Target = main(int, const char**)::<anonymous struct>, Source = std::basic_string<wchar_t>]'
Q:\Tools\CodeBlocks\Custom\include/boost/lexical_cast.hpp:2087:50:   instantiated from 'Target boost::lexical_cast(const Source&) [with Target = main(int, const char**)::<anonymous struct>, Source = std::basic_string<wchar_t>]'
Q:\Tools\CodeBlocks\Custom\include/boost/program_options/detail/value_semantic.hpp:88:13:   instantiated from 'void boost::program_options::validate(boost::any&, const std::vector<std::basic_string<charT> >&, T*, long int) [with T = main(int, const char**)::<anonymous struct>, charT = wchar_t]'
Q:\Tools\CodeBlocks\Custom\include/boost/program_options/detail/value_semantic.hpp:169:13:   instantiated from 'void boost::program_options::typed_value<T, charT>::xparse(boost::any&, const std::vector<std::basic_string<charT> >&) const [with T = main(int, const char**)::<anonymous struct>, charT = wchar_t]'
Q:\Work\rwork\nedtest\main.cpp:23:1:   instantiated from here
Q:\Tools\CodeBlocks\Custom\include/boost/lexical_cast.hpp:1544:29: error: cannot bind 'std::basic_istream<wchar_t>' lvalue to 'std::basic_istream<wchar_t>&&'


Ах, нововведение заключается в стрелочке, как я забыл.
Кроме нее ничего полезного. В случае маленькой ошибки gcc выводит всякую ересь. Порой даже ересь не относится к ошибке. smile
В MSVC с этим лучше, там таки более-менее вменяемое выдает.
PM MAIL   Вверх
boostcoder
Дата 29.4.2012, 15:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



и правда.
ну ждем. разрабы обещали что будет не хуже чем у кланга.
PM WWW   Вверх
Randajad
Дата 30.4.2012, 22:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 295
Регистрация: 15.3.2012

Репутация: 8
Всего: 8



Когда кланг стоит ждать? smile
PM MAIL   Вверх
boostcoder
Дата 30.4.2012, 23:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



эм... сейчас решается вопрос.
PM WWW   Вверх
Randajad
Дата 8.5.2012, 17:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 295
Регистрация: 15.3.2012

Репутация: 8
Всего: 8



На гцц 4.8 лто не распаралелливается. Выдает ошибку: lto-wrapper: CreateProcess: No such file or directory
PM MAIL   Вверх
boostcoder
Дата 8.5.2012, 17:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



ссылку на сборку, пожалуйста. и командную строку.
и впредь - так же.

Это сообщение отредактировал(а) boostcoder - 8.5.2012, 17:27
PM WWW   Вверх
Randajad
Дата 8.5.2012, 21:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 295
Регистрация: 15.3.2012

Репутация: 8
Всего: 8



main.cpp:

int main(){}

g++ main.cpp -flto=4

sourceforge.net/projects/mingwbuilds/files/windows-host/4.8.0/snapshot/i686-mingw32-gcc-4.8.0-snapshot-20120430-rev-186947-c%2Cc%2B%2B%2Cfortran.7z/download

Это сообщение отредактировал(а) Randajad - 8.5.2012, 21:26
PM MAIL   Вверх
boostcoder
Дата 9.5.2012, 00:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



Randajad, у меня происходит такая ошибка:
Цитата

"make": [C:\Users\юзер\AppData\Local\Temp\ccKXUcye.ltrans0.ltrans.o] Error 1 (ignored)


но это нормально если учесть, что snapshot`ы вообще работать не обязаны)

Это сообщение отредактировал(а) boostcoder - 9.5.2012, 00:43
PM WWW   Вверх
Randajad
Дата 9.5.2012, 08:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 295
Регистрация: 15.3.2012

Репутация: 8
Всего: 8



Не обязаны работать? Да ладно. smile
Работает кошерно. Никаких особых трабл, кроме описаных выше, нету. Лто - вещь, кстати. Прирост ощутимый дает, плюс теперь гцц научилось выкидывать dead-code из экзешки по-нормальному. На крупном проекте с 6,7 метров стало всего 3,5. Правда без распаралелливания линкуется 3 минуты. smile
Скорее бы релиз новый, что-ли. smile
PM MAIL   Вверх
Randajad
Дата 9.5.2012, 11:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 295
Регистрация: 15.3.2012

Репутация: 8
Всего: 8



К сведению на release gcc 4.7.0 оно тоже не распаралелливается.

lto-wrapper: CreateProcess: No such file or directory
gcc/bin/../lib/gcc/i686-w64-mingw32/4.7.0/../../../../i686-w64-mingw32/bin/ld.exe: lto-wrapper failed
collect2.exe: error: ld returned 1 exit status

http://sourceforge.net/projects/mingwbuild...ran.7z/download

Так что ваши релизы тоже не работают.  smile 

Это сообщение отредактировал(а) Randajad - 9.5.2012, 11:17
PM MAIL   Вверх
boostcoder
Дата 9.5.2012, 11:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



Цитата(Randajad @  9.5.2012,  11:08 Найти цитируемый пост)
release gcc 4.7.0 оно тоже не распаралелливается

смогу проверить часов через 8мь, к сожалению.
но что-то мне подсказывает, что ошибка тоже будет чем-то вроде:
Цитата

"make": [C:\Users\юзер\AppData\Local\Temp\ccKXUcye.ltrans0.ltrans.o] Error 1 (ignored)


Добавлено через 6 минут и 17 секунд
а где ты выполняешь эту команду?
в смысле, откуда запускаешь?

PM WWW   Вверх
Randajad
Дата 9.5.2012, 15:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 295
Регистрация: 15.3.2012

Репутация: 8
Всего: 8



Откуда-нибудь.
gcc/bin в path стоит.
Увы, ваша ошибка мне ни о чем не говорит, совсем.
PM MAIL   Вверх
Randajad
Дата 13.5.2012, 13:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 295
Регистрация: 15.3.2012

Репутация: 8
Всего: 8



Эм, а почему gcc 4.8.0 использует sse2 по-умолчанию? Экзешка отказалась запускаться на моем старом компе. Только после указания -march вручную заработало.
PM MAIL   Вверх
boostcoder
Дата 13.5.2012, 14:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



Цитата(Randajad @  13.5.2012,  13:28 Найти цитируемый пост)
почему gcc 4.8.0 использует sse2 по-умолчанию?

а 4.7.х и 4.6.х так же?

PM WWW   Вверх
Randajad
Дата 13.5.2012, 15:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 295
Регистрация: 15.3.2012

Репутация: 8
Всего: 8



http://sourceforge.net/projects/mingwbuild...ran.7z/download
Та же история.

Добавлено через 7 минут и 56 секунд
UPD:
http://sourceforge.net/projects/mingwbuild...ran.7z/download
Тут проблемы нет.
Видимо, она только с x64 хостом, который собирает x86 приложение.
PM MAIL   Вверх
boostcoder
Дата 13.5.2012, 15:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



Цитата(Randajad @  13.5.2012,  15:32 Найти цитируемый пост)
Видимо, она только с x64 хостом, который собирает x86 приложение.

приведи еще код, которым детектируешь такое поведение. попробую разузнать.

PM WWW   Вверх
Randajad
Дата 13.5.2012, 15:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 295
Регистрация: 15.3.2012

Репутация: 8
Всего: 8



3D движок irrlicht + любой из его примеров.
PM MAIL   Вверх
boostcoder
Дата 13.5.2012, 15:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



Цитата(Randajad @  13.5.2012,  15:46 Найти цитируемый пост)
3D движок irrlicht + любой из его примеров.

 smile 
и как же я девелоперам объясню это, учитывая что воспроизвести они это смогут только на примерах irrlicht ?

Добавлено @ 15:55
скинь тогда обе экзешки. я на примере сгенеренного ассемблера им покажу разницу.

Добавлено через 3 минуты и 6 секунд
они статически линкуют зависимости от irrlicht?
если нет - тогда и dll`ки тоже скинь.


Это сообщение отредактировал(а) boostcoder - 13.5.2012, 15:55
PM WWW   Вверх
Randajad
Дата 13.5.2012, 16:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 295
Регистрация: 15.3.2012

Репутация: 8
Всего: 8



Да наверняка любая программка с каким-нибудь циклом, который гцц может векторизировать. smile
Чуть попозже сделаю таковой и предоставляю. 
Ирлич - текущий проект, поэтому на нем выяснилось. smile

Это сообщение отредактировал(а) Randajad - 13.5.2012, 16:06
PM MAIL   Вверх
boostcoder
Дата 14.5.2012, 15:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



Цитата(Randajad @  13.5.2012,  16:06 Найти цитируемый пост)
Чуть попозже сделаю таковой и предоставляю.

пинг?

PM WWW   Вверх
boostcoder
Дата 24.5.2012, 04:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



Сегодня, состоялся релиз системы сборки 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 вы можете прочесть здесь.

Это сообщение отредактировал(а) boostcoder - 24.5.2012, 04:06
PM WWW   Вверх
AndrewMT
Дата 31.5.2012, 18:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 31.5.2012

Репутация: нет
Всего: нет



Подскажите, пожалуйста...

Всё-таки возможно собрать Qt под Windows (64-bit) 64-битным MinGW? С нормальной поддержкой OpenMP?

До этого пользовалься Qt с компилятором от MSVC++, нашёл в нём баг (связанный с threadprivate), который
ещё в 2005 г. GNU исправил - я сам проверял на 32-битном MinGW...

 Насколько я знаю, Nokia официально Qt с MinGW 64-bit не поддерживает....
PM MAIL   Вверх
boostcoder
Дата 31.5.2012, 19:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



по правде сказать, я не пробовал..
попробуйте. о проблемах отпишитесь. попробуем разобраться.

PM WWW   Вверх
AndrewMT
Дата 31.5.2012, 19:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 31.5.2012

Репутация: нет
Всего: нет



ОК, попробую, сообщу. Надеюсь, разберёмся ))
PM MAIL   Вверх
Randajad
Дата 5.6.2012, 17:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 295
Регистрация: 15.3.2012

Репутация: 8
Всего: 8



d:\msys\mingw-gcc-trunk-x32\lib\gcc\i686-w64-mingw32\specs
Почему GCC этот файлик хочет? У меня винда из-за этого выдает табличку про отсутствие диска "D:", ибо у меня его нет.
PM MAIL   Вверх
boostcoder
Дата 5.6.2012, 17:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



покажи аргументы командной строки.
PM WWW   Вверх
Randajad
Дата 5.6.2012, 18:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 295
Регистрация: 15.3.2012

Репутация: 8
Всего: 8



gcc -v.
PM MAIL   Вверх
boostcoder
Дата 5.6.2012, 18:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



похоже, ты второй человек у которого на машине нет диска D: smile 
такая же проблема описана тут.

как решить проблему правильно - я так и не понял.
можно обойти ее, собирая MinGW на диске C:

PM WWW   Вверх
Randajad
Дата 5.6.2012, 19:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 295
Регистрация: 15.3.2012

Репутация: 8
Всего: 8



Исходники GCC есть, какие проблемы? smile
Выпилить из кода этот участок. smile Все-равно не найдет же.

P.S.: оно проверяет наличие файла через _access.
PM MAIL   Вверх
boostcoder
Дата 5.6.2012, 19:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



Цитата(Randajad @  5.6.2012,  19:03 Найти цитируемый пост)
какие проблемы?

никаких проблем.
но почему-то от от тебя я патча так и не получил. сколько нужно ждать?

Цитата(Randajad @  5.6.2012,  19:03 Найти цитируемый пост)
оно проверяет наличие файла через _access

как определил?

PM WWW   Вверх
Randajad
Дата 5.6.2012, 19:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 295
Регистрация: 15.3.2012

Репутация: 8
Всего: 8



Дизассемблил. smile
Я ж в личку ответил причину. :3

.text:00456B7B                 mov     [esp+0Ch+var_8], 4
.text:00456B83                 mov     [esp+0Ch+var_C], ebx
.text:00456B86                 call    ds:_access
PM MAIL   Вверх
boostcoder
Дата 5.6.2012, 19:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



порою в этом направлении...

PM WWW   Вверх
borisbn
Дата 6.6.2012, 10:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 4875
Регистрация: 6.2.2010
Где: Ростов-на-Дону

Репутация: 22
Всего: 135



Цитата(Randajad @  15.3.2012,  13:22 Найти цитируемый пост)
std::regex запилили бы лучше. 

оно, конечно, три месяца прошло... но лучше поздно, чем никогда...
вот - http://gcc.gnu.org/onlinedocs/libstdc++/ma...status.iso.2011
п. 28 - Regular expressions
и вот - http://stackoverflow.com/questions/8060025...or-the-compiler
будем ждать
они что, не могли тупо переименовать boost::regex в std::regex ? Все ж привыкли уже к бустовским, так зачем было что-то менять ???


--------------------
Женщины отличаются от программистов тем, что у них чары состоят из стрингов
PM MAIL Jabber   Вверх
Randajad
Дата 6.6.2012, 11:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 295
Регистрация: 15.3.2012

Репутация: 8
Всего: 8



Видимо решили свою реализацию. Уже вон сколько времени, а до сих пор нету. smile
PM MAIL   Вверх
boostcoder
Дата 14.6.2012, 23:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



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

Уже сейчас вы можете скачать сборки MinGW на базе GCC-4.7.1.

PM WWW   Вверх
Randajad
Дата 15.6.2012, 08:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 295
Регистрация: 15.3.2012

Репутация: 8
Всего: 8



Скачал. Другие баги остались.

wchar.h, 950.

Код

  int wmemcmp(const wchar_t *s1, const wchar_t *s2,size_t n);


Тот же файл, 973.

Код

  __CRT_INLINE int [color=red]__cdecl[/color] wmemcmp(const wchar_t *_S1,const wchar_t *_S2,size_t _N) {


Добавлено через 1 минуту и 15 секунд
math.h, 426:

Код

  extern float [color=red]__cdecl[/color] sinhf(float _X);
#ifndef __CRT__NO_INLINE
  __CRT_INLINE float sinhf(float _X) { return ((float)sinh((double)_X)); }
#endif


Добавлено через 3 минуты и 1 секунду
Вообщем это везде в math.h в #ifndef __CRT__NO_INLINE и выплывает при изменении стандартного calling convention.
PM MAIL   Вверх
boostcoder
Дата 15.6.2012, 08:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



про эти последствия копипаста ты раньше не говорил.
так что -
Цитата(Randajad @  15.6.2012,  08:06 Найти цитируемый пост)
Другие баги остались.

для меня это новые баги.


Цитата(Randajad @  15.6.2012,  08:06 Найти цитируемый пост)
выплывает при изменении стандартного calling convention.

а для чего это делать?

PM WWW   Вверх
Randajad
Дата 15.6.2012, 08:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 295
Регистрация: 15.3.2012

Репутация: 8
Всего: 8



Жалко, что не поправили распаралелливание лто.

Добавлено через 24 секунды
Ну как. smile
В любом случае должно работать. smile
PM MAIL   Вверх
boostcoder
Дата 15.6.2012, 08:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



какой-то баг с распаралелливанием LTO все же пофиксили: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53019
PM WWW   Вверх
Randajad
Дата 15.6.2012, 08:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 295
Регистрация: 15.3.2012

Репутация: 8
Всего: 8



Какой-то...
А все эти багфиксы в ветку 4.8 перенесены? Если да, то когда снапшотик будет? smile
PM MAIL   Вверх
boostcoder
Дата 15.6.2012, 08:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



Цитата(Randajad @  15.6.2012,  08:27 Найти цитируемый пост)
А все эти багфиксы в ветку 4.8 перенесены?

конечно.

Цитата(Randajad @  15.6.2012,  08:27 Найти цитируемый пост)
Если да, то когда снапшотик будет?

воскресенье-понедельник.
впрочем, как обычно smile


Это сообщение отредактировал(а) boostcoder - 15.6.2012, 08:42
PM WWW   Вверх
boostcoder
Дата 19.6.2012, 15:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



Цитата(Randajad @  15.6.2012,  08:13 Найти цитируемый пост)
не поправили распаралелливание лто.

ты баг-репорт написал?
как воспроизвести баг?

PM WWW   Вверх
Randajad
Дата 19.6.2012, 18:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 295
Регистрация: 15.3.2012

Репутация: 8
Всего: 8



Я писал в этой теме тебе. =_=
Любую программу/дллку линковать с параметром -flto=4 или любым другим числом, отличным от 1.
PM MAIL   Вверх
Randajad
Дата 26.6.2012, 18:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 295
Регистрация: 15.3.2012

Репутация: 8
Всего: 8



Ом-ом-ом!
Не могу обнаружить в сборке от 25 числа i686 GCC 4.8 либу winhttp. Хидер есть, либы нету. :(

Добавлено через 56 секунд
На случай. Выдрал из студии 10-ой.

Присоединённый файл ( Кол-во скачиваний: 1 )
Присоединённый файл  winhttp.lib 8,62 Kb
PM MAIL   Вверх
boostcoder
Дата 26.6.2012, 21:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



эм..
PM WWW   Вверх
Randajad
Дата 3.7.2012, 17:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 295
Регистрация: 15.3.2012

Репутация: 8
Всего: 8



user posted image

Это гцц/афтар специально более 9000 одинаковых копирастов оставляет?
PM MAIL   Вверх
boostcoder
Дата 3.7.2012, 18:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



я всего один раз указываю. и только для gcc.
PM WWW   Вверх
Randajad
Дата 4.7.2012, 10:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 295
Регистрация: 15.3.2012

Репутация: 8
Всего: 8



Я бы сказал что это, а не GCC.

http://sourceforge.net/projects/mingwbuild...NAL.7z/download
Последняя релизная сборка.

Простой пример:

Код

int main() {
    wchar_t buf[2];
    int len = snwprintf(buf, sizeof(buf) / 2, L"world!");

    printf("%d\n", len);
}


Должно вывести -1. Выводит, если огородить этот пример от мира сего.

Просто инклюдим boost::system(он имеет какие-то статические объекты).
Код

#include <boost/system/system_error.hpp>


Этот невинный пример начинает требовать libboost_system. О-кей. Мы ему его дали.
Этот невинный пример начинает выводить 6.

Поищу нехорошие вещи в boost::system, отпишусь.
Но под вяндой мне этот компилятор начинает нравиться все меньше.

Добавлено @ 10:30
Обнаружил волшебный макрос, который заставляет boost::system не требовать либу. Если дефайнить BOOST_SYSTEM_NO_DEPRECATED, то все собирается и без либы, но результат такой же. Для чистоты эксперимента все собиралось с одним лишь -g.
Копать сотни хидеров буста не собираюсь, о баге отписался.
На сим удачи!

Это сообщение отредактировал(а) Randajad - 4.7.2012, 12:13
PM MAIL   Вверх
boostcoder
Дата 4.7.2012, 11:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



посмотри, в экспорте msvcrt.dll есть экспорт этой функции? или только этой же функции но с лидирующим подчерком?
в msdn`е нашел только функцию с подчерком.

PM WWW   Вверх
Randajad
Дата 4.7.2012, 12:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 295
Регистрация: 15.3.2012

Репутация: 8
Всего: 8



Код

/* __attribute__((__format__ (gnu_wprintf, 3, 4))) */ __MINGW_ATTRIB_NONNULL(3)
int snwprintf (wchar_t *__stream, size_t __n, const wchar_t *__format, ...)
{
  register int __retval;
  __builtin_va_list __local_argv; __builtin_va_start( __local_argv, __format );
  __retval = __mingw_vsnwprintf( __stream, __n, __format, __local_argv );
  __builtin_va_end( __local_argv );
  return __retval;
}


С бустотой оно юзает это из wchar.h.

Без бустоты оно юзает это

Код

  int snwprintf (wchar_t * __restrict__ s, size_t n, const wchar_t * __restrict__ format, ...)
  {
    int r;
    va_list argp;
    __builtin_va_start (argp, format);
    r = _vsnwprintf (s, n, format, argp);
    __builtin_va_end (argp);
    return r;
  }
  __mingw_ovr
  int __cdecl vsnwprintf (wchar_t * __restrict__ s, size_t n, const wchar_t * __restrict__ format, va_list arg)
  {
    return _vsnwprintf(s,n,format,arg);
  }


Из stdio.h. smile

Разгадка в __USE_MINGW_ANSI_STDIO, я не знаю, что его дефайнит.
PM MAIL   Вверх
boostcoder
Дата 4.7.2012, 12:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



такая мысль еще посетила... может быть boost.system предоставляет реализацию snwprintf() ? smile 
PM WWW   Вверх
Randajad
Дата 4.7.2012, 12:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 295
Регистрация: 15.3.2012

Репутация: 8
Всего: 8



Когда пофиксится моя бага с форматом строк в принтфе?


Цитата

Цитата

s — вывод строки с нулевым завершающим байтом; если модификатор длины — l, выводится строка wchar_t*. В Windows значения типа s зависят от типа используемых функций. Если используется семейство printf функций, то s обозначает строку char*. Если используется семейство wprintf функций, то s обозначает строку wchar_t*.
S — то же самое что и s с модификатором длины l; В Windows значения типа S зависит от типа используемых функций. Если используется семейство printf функций, то S обозначает строку wchar_t*. Если используется семейство wprintf функций, то S обозначает строку char*.


© Педивикия.

Однако в реальности %S в wprintf все также обозначает wchar_t * строку, а %s - все так же обычную char *.
GCC 4.7.



Из-за этого код непереносим под вяндой с GCC на MSVC/ICC.

Добавлено через 30 секунд
Нет, я подебажил. Смотреть выше. smile
PM MAIL   Вверх
boostcoder
Дата 4.7.2012, 12:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



Цитата(Randajad @  4.7.2012,  12:15 Найти цитируемый пост)
Разгадка в __USE_MINGW_ANSI_STDIO, я не знаю, что его дефайнит.

наверное boost.system или включаемый им boost.config...


Это сообщение отредактировал(а) boostcoder - 4.7.2012, 12:19
PM WWW   Вверх
boostcoder
Дата 4.7.2012, 12:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



Randajad, так используя/не_используя __USE_MINGW_ANSI_STDIO, поведение воспроизводится по разному и без boost.system?

PM WWW   Вверх
Randajad
Дата 4.7.2012, 13:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 295
Регистрация: 15.3.2012

Репутация: 8
Всего: 8



Ога.
Без буста и без него - -1.
Без буста и с ним - 6.
PM MAIL   Вверх
boostcoder
Дата 4.7.2012, 13:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



попробую у разрабов CRT`ишки узнать...
PM WWW   Вверх
boostcoder
Дата 10.7.2012, 17:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



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

качать архивы с пометкой 'rev2'.


зы
Randajad, по поводу бага с распараллеливанием LTO - я не забил.
по поводу бага с функцией snwprintf() - тоже не забил.


Это сообщение отредактировал(а) boostcoder - 10.7.2012, 17:32
PM WWW   Вверх
Randajad
Дата 10.7.2012, 21:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 295
Регистрация: 15.3.2012

Репутация: 8
Всего: 8



А на

Цитата

s — вывод строки с нулевым завершающим байтом; если модификатор длины — l, выводится строка wchar_t*. В Windows значения типа s зависят от типа используемых функций. Если используется семейство printf функций, то s обозначает строку char*. Если используется семейство wprintf функций, то s обозначает строку wchar_t*.
S — то же самое что и s с модификатором длины l; В Windows значения типа S зависит от типа используемых функций. Если используется семейство printf функций, то S обозначает строку wchar_t*. Если используется семейство wprintf функций, то S обозначает строку char*.


© Педивикия.

Однако в реальности %S в wprintf все также обозначает wchar_t * строку, а %s - все так же обычную char *.
GCC 4.7.


Забил? smile
Кстати, что насчет кланга? Вроде, говорил, что вопрос решается. smile
И вообще, добавляйся ваську! Если тебе интересна перспектива, что я буду тебя мучить. :3
PM MAIL   Вверх
boostcoder
Дата 10.7.2012, 22:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



Цитата(Randajad @  10.7.2012,  21:50 Найти цитируемый пост)
Забил?

а про это забыл, да.

Цитата(Randajad @  10.7.2012,  21:50 Найти цитируемый пост)
что насчет кланга?

локально - скрипты написаны. проект тоже создан. нужно собрать первые сборки, и выгрузить на страницу проекта. ну и вроде все.

Цитата(Randajad @  10.7.2012,  21:50 Найти цитируемый пост)
добавляйся ваську!

год как я не использую никаких IM программ, и от этого невероятно рад. нет, обратно не ворочусь smile

Цитата(Randajad @  10.7.2012,  21:50 Найти цитируемый пост)
Если тебе интересна перспектива, что я буду тебя мучить.

давай я тебе почту свою сообщу, если еще не знаешь.

PM WWW   Вверх
Randajad
Дата 11.7.2012, 18:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 295
Регистрация: 15.3.2012

Репутация: 8
Всего: 8



Мыло - это грустно.
Насчет %S и %s в представлении gcc: как workaround юзаю функции с _ в начале, они берутся из crt мелкомягких.
PM MAIL   Вверх
boostcoder
Дата 14.7.2012, 00:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



Сегодня состоялся релиз системы сборки 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 хостов.

Это сообщение отредактировал(а) boostcoder - 14.7.2012, 00:15
PM WWW   Вверх
Randajad
Дата 16.7.2012, 23:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 295
Регистрация: 15.3.2012

Репутация: 8
Всего: 8



Использую гцц 4.8 от 2 числа сего месяца, ссылку искать лениво.
Нашлась трабла: у меня много new на мелких объектах, в итоге при некотором большом их числе вылетает bad_alloc. Кто-нибудь сталкивался? При этом еще свободно где-то 2 гига озу, а само приложение всего 70 захавывает.

Буду искать траблу в коде, отпишусь.
PM MAIL   Вверх
Randajad
Дата 17.7.2012, 00:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 295
Регистрация: 15.3.2012

Репутация: 8
Всего: 8



LastError == ERROR_NOT_ENOUGH_MEMORY.

С маллоком то же самое.
Вряд-ли это у меня трабла. Но... Наводит на мысли. Попробую замутить test-case.
PM MAIL   Вверх
boostcoder
Дата 17.7.2012, 10:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



ну, мне кажется, что компилятор тут не при чем... и CRT`ишка то же, ибо она не реализует malloc/free.
PM WWW   Вверх
bsa
Дата 17.7.2012, 12:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 63
Всего: 196



Цитата(boostcoder @  17.7.2012,  11:15 Найти цитируемый пост)
ну, мне кажется, что компилятор тут не при чем... и CRT`ишка то же, ибо она не реализует malloc/free. 

именно CRT и реализует malloc/free. Другое дело, что реализация может сводиться только к перенаправлению вызовов на функции WinAPI.
Цитата(Randajad @  17.7.2012,  00:40 Найти цитируемый пост)
у меня много new на мелких объектах, в итоге при некотором большом их числе вылетает bad_alloc
Думаю, ты просто забил всю таблицу распределения памяти (или что-то в этом духе). Тебе необходимо реализовать пул для своих объектов. Именно для этого у каждого STL-контейнера существует возможность замены аллокатора.
PM   Вверх
boostcoder
Дата 17.7.2012, 13:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



Цитата(bsa @  17.7.2012,  12:42 Найти цитируемый пост)
именно CRT и реализует malloc/free.

CRT от проекта mingw и mingw-w64 не реализуют.

PM WWW   Вверх
bsa
Дата 18.7.2012, 13:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 63
Всего: 196



Цитата(boostcoder @  17.7.2012,  14:01 Найти цитируемый пост)
CRT от проекта mingw и mingw-w64 не реализуют.

странно. я думал, проект Mingw использует msvcrt.dll в качестве CRT. 
PM   Вверх
boostcoder
Дата 18.7.2012, 14:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



Цитата(bsa @  18.7.2012,  13:43 Найти цитируемый пост)
я думал, проект Mingw использует msvcrt.dll

да, использует. но не реализует.

PM WWW   Вверх
bsa
Дата 18.7.2012, 15:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 63
Всего: 196



Цитата(boostcoder @  18.7.2012,  15:11 Найти цитируемый пост)
да, использует. но не реализует.

а где тогда определены символы _malloc, _realloc, _free?
PM   Вверх
boostcoder
Дата 18.7.2012, 15:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



они импортируются из msvcrt.

PM WWW   Вверх
bsa
Дата 18.7.2012, 15:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 63
Всего: 196



boostcoder, открою тебе секрет, если ты так и не понял: msvcrt.dll - это и есть CRT (C runtime library) для программ собранных mingw. А mingw10.dll и еще одна либа - чисто служебные, необходимые для работы исключений и потоков.

Это сообщение отредактировал(а) bsa - 18.7.2012, 15:41
PM   Вверх
boostcoder
Дата 18.7.2012, 16:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



Цитата(bsa @  18.7.2012,  15:39 Найти цитируемый пост)
msvcrt.dll - это и есть CRT (C runtime library) для программ собранных mingw.

я бы тебе открыл другой секрет. но не хочу тебя позорить.

PM WWW   Вверх
Randajad
Дата 18.7.2012, 18:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 295
Регистрация: 15.3.2012

Репутация: 8
Всего: 8



Спокойнее, спокойнее.
Видимо, действительно некая таблица с выделенными блоками засиралась/затирало ее что. Но почему-то 1024 * 1024 и даже больше new/malloc в debug в попытке сделать test-case успехом не увенчались. Отрефакторил архитектуру, ошибка пропала.
Всем спасибо. :3
PM MAIL   Вверх
boostcoder
Дата 19.7.2012, 10:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



Randajad, касательно бага описанного тут...
я патч закоммитил. приняли. но просят выслать тест в виде маленькой программы, демонстрирующей воспроизведение ошибки без патча, и исправление этой ошибки патчем.
сделай плиз ;)

PM WWW   Вверх
Randajad
Дата 19.7.2012, 10:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 295
Регистрация: 15.3.2012

Репутация: 8
Всего: 8



Да вроде в том топике все есть, и программка и вообще. smile
Или надо что-то еще?

Код

int main() {
   boost::filesystem::exists("FFFFFFFUUUUUUUUUUU");
}


Без патча кидает. С патчем не кидает.

Скомпилированные экзешки надо?

Это сообщение отредактировал(а) Randajad - 19.7.2012, 10:43
PM MAIL   Вверх
boostcoder
Дата 19.7.2012, 10:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



так без буста же =)
с бустом я мог выслать им тот пример из темы =)

Добавлено @ 11:01
к примеру, первый баг который был связан с TLS, воспроизводится этим тестом.
Код

#include <windows.h>

struct C { ~C() {} };

int Test() {
    C t;
    return ::GetLastError();
}

int main(int, const char**) {
    ::SetLastError(2);

    return Test()-2;
}


вот нужен пример на подобии этого. но я не понимаю как его воспроизвести.

Это сообщение отредактировал(а) boostcoder - 19.7.2012, 11:03
PM WWW   Вверх
Randajad
Дата 19.7.2012, 12:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 295
Регистрация: 15.3.2012

Репутация: 8
Всего: 8



А! О-кей. Сейчас сделаю.
PM MAIL   Вверх
boostcoder
Дата 19.7.2012, 12:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



Цитата(Randajad @  19.7.2012,  12:11 Найти цитируемый пост)
Сейчас сделаю.

да, плиз. а то я не очень понял как это воспроизвести. к тому же, на работает нет венды..

PM WWW   Вверх
Randajad
Дата 19.7.2012, 12:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 295
Регистрация: 15.3.2012

Репутация: 8
Всего: 8



Код

#include <windows.h>

struct S {
    ~S() {
        SetLastError(123);
    }
};

void foo() {
    S();
}

int main() {
    foo();
    return GetLastError();
}


На старом возвращает 0. На новом 123. Собирать без оптимизаций. smile

Это сообщение отредактировал(а) Randajad - 19.7.2012, 12:54
PM MAIL   Вверх
boostcoder
Дата 19.7.2012, 12:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



Randajad, спасибо!

PM WWW   Вверх
Randajad
Дата 14.8.2012, 20:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 295
Регистрация: 15.3.2012

Репутация: 8
Всего: 8



Ом-ном-ном!

Код

struct A {
    ~A() {
        throw 0;
    }
};

int main() {
    try {
        A a;
    } catch(...) {}
}


Делает крашик, что печально и не должно быть.

Оффтоп:
Студия на этот код порождает вареник:
warning C4722: 'A::~A' : destructor never returns, potential memory leak

Она врет, да?

Это сообщение отредактировал(а) Randajad - 14.8.2012, 20:46
PM MAIL   Вверх
EnergoHokum
Дата 15.8.2012, 09:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 600
Регистрация: 10.11.2006
Где: Россия, Ставропол ь

Репутация: нет
Всего: 6



Цитата

Она врет, да?


Нет.
PM MAIL ICQ   Вверх
bsa
Дата 15.8.2012, 10:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 63
Всего: 196



Randajad, вообще-то, выход исключения из деструктора приводит к аварийному завершению работы программы. Даже, если снаружи стоит отлов исключений.
PM   Вверх
Randajad
Дата 15.8.2012, 12:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 295
Регистрация: 15.3.2012

Репутация: 8
Всего: 8



Не приводит. Кидать исключения из деструктора разрешено. Если было выкинуто другое исключение и какой-нибудь объект при разрушении кидает еще одно исключение - тогда да, краш.

Почему нет? Это разрешено.
PM MAIL   Вверх
bsa
Дата 16.8.2012, 11:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 63
Всего: 196



точно. уже не раз на эти грабли наступаю. просто сделал себе установку - никаких исключений в деструкторах.
PM   Вверх
boostcoder
Дата 20.8.2012, 14:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



в линукс отрабатывает корректно: http://liveworkspace.org/code/b441e2e80ab1...1295569e7eb3407
проверьте кто-нибудь в венде, что выводит?

PM WWW   Вверх
Randajad
Дата 20.8.2012, 21:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 295
Регистрация: 15.3.2012

Репутация: 8
Всего: 8



Цитата

terminate called after throwing an instance of 'int'

This application has requested the Runtime to terminate it in an unusual way.
Please contact the application's support team for more information.


PM MAIL   Вверх
boostcoder
Дата 20.8.2012, 22:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



Randajad, хм..
предположения?

PM WWW   Вверх
Randajad
Дата 20.8.2012, 22:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 295
Регистрация: 15.3.2012

Репутация: 8
Всего: 8



Ноу предположений.
PM MAIL   Вверх
boostcoder
Дата 26.8.2012, 12:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



задался целью создать онлайн инсталлятор для MinGW-builds и возникло несколько вопросов.

1. как назвать исполняемый файл инсталлятора?
2. какое использовать лого?
3. нужна ли возможность апдейтить установленную версию MinGW? т.е. к примеру узер установил 4.7.1. после, вышла версия 4.7.2. нужна ли возможность заменить установленную 4.7.1 на 4.7.2?

установка предполагается в шесть шагов:
1. указание версии.
2. указание типа сборки(snapshot/prerelease/release).
3. указание архитектуры(i686/x86_64).
4. для релизов допустим выбор ревизии сборки.
5. в получившемся списке указать конкретную сборку.
6. указание каталога установки.

какие будут предложения/мысли?

спасибо.

PM WWW   Вверх
bsa
Дата 26.8.2012, 15:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 63
Всего: 196



Цитата(boostcoder @  26.8.2012,  13:42 Найти цитируемый пост)
1. как назвать исполняемый файл инсталлятора?
mingw-x.xx-install.exe
Цитата(boostcoder @  26.8.2012,  13:42 Найти цитируемый пост)
2. какое использовать лого?
А какие варианты? Думаю, официальное.
Цитата(boostcoder @  26.8.2012,  13:42 Найти цитируемый пост)
3. нужна ли возможность апдейтить установленную версию MinGW?
И да и нет. Лучше оставить возможность установки одновременно разных версий компилятора в разные каталоги (например: c:\mingw\4.7.1, c:\mingw\4.8.0-pre). Иногда бывает нужно.
Цитата(boostcoder @  26.8.2012,  13:42 Найти цитируемый пост)
1. указание версии.
2. указание типа сборки(snapshot/prerelease/release).
Противоречий тут случаем нет?

Лучше делать через msi пакет. Так будет возможность автоматического развертывания в домене.

Это сообщение отредактировал(а) bsa - 26.8.2012, 15:59
PM   Вверх
boostcoder
Дата 26.8.2012, 16:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



Цитата(bsa @  26.8.2012,  15:59 Найти цитируемый пост)
mingw-x.xx-install.exe

а иксы тут что значат? версию? версию инсталлятора?

Цитата(bsa @  26.8.2012,  15:59 Найти цитируемый пост)
А какие варианты?

нет пока вариантов. думал, кто-то предложит.

Цитата(bsa @  26.8.2012,  15:59 Найти цитируемый пост)
Думаю, официальное.

эм...а это какое?

Цитата(bsa @  26.8.2012,  15:59 Найти цитируемый пост)
Лучше оставить возможность установки одновременно разных версий компилятора в разные каталоги

так это само собой.
я имел ввиду, при установке в каталог в который уже установлена 4.7.1 версии 4.7.2 или выше, чтоб происходила замена только тех файлов, которые были установлены предыдущей установкой. не удаляя файлы которые юзер сам добавил.
но пока писал, подумал, что даже при деинсталляции, инсталлятор ведь не удаляет не свои файлы. так что обновление это лишняя путаница.

Цитата(bsa @  26.8.2012,  15:59 Найти цитируемый пост)
Противоречий тут случаем нет?

вроде нет.

например:
4.7.2-prerelease
4.7.2-release
4.7.1-release
4.8.0-snapshot
4.7.0-snapshot

PM WWW   Вверх
bsa
Дата 26.8.2012, 21:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 63
Всего: 196



Цитата(boostcoder @  26.8.2012,  17:56 Найти цитируемый пост)
а иксы тут что значат? версию? версию инсталлятора?
зависит от того, что будет делаться. Если инсталлятор позволяет установить все возможные версии, то номер версии нужно убрать вообще.
Цитата(boostcoder @  26.8.2012,  17:56 Найти цитируемый пост)
эм...а это какое?
антилопа Гну

PM   Вверх
boostcoder
Дата 26.8.2012, 22:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



Цитата(bsa @  26.8.2012,  21:53 Найти цитируемый пост)
Если инсталлятор позволяет установить все возможные версии, то номер версии нужно убрать вообще.

да, на то он и онлайн-инсталлер.
PM WWW   Вверх
boostcoder
Дата 30.8.2012, 23:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



немного новостей касательно 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 компилятора, понимает, насколько это расширение необходимо для разработчиков многопоточных алгоритмов/программ.

Это сообщение отредактировал(а) boostcoder - 31.8.2012, 00:16
PM WWW   Вверх
boostcoder
Дата 31.8.2012, 21:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



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


Это сообщение отредактировал(а) boostcoder - 31.8.2012, 21:17
PM WWW   Вверх
boostcoder
Дата 10.9.2012, 13:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



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

PM WWW   Вверх
Randajad
Дата 16.9.2012, 10:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 295
Регистрация: 15.3.2012

Репутация: 8
Всего: 8



Лучше бы тот же regex запилили, а то достало буст таскать.
К теме о троллях: конец немного предсказуем.

Кстати, когда стоит ждать новые снапшоты 4.8?
PM MAIL   Вверх
boostcoder
Дата 16.9.2012, 10:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



Цитата(Randajad @  16.9.2012,  10:28 Найти цитируемый пост)
К теме о троллях: конец немного предсказуем.

и какой он, по твоему?

Цитата(Randajad @  16.9.2012,  10:28 Найти цитируемый пост)
когда стоит ждать новые снапшоты 4.8?

на прошлых выходных я собрал 4.8-x86_64 с использованием SEH.
multilib сборки так и не собираются %)
тебя какие конкретно архитектуры интересуют?

Цитата(Randajad @  16.9.2012,  10:28 Найти цитируемый пост)
Лучше бы тот же regex запилили

ты пытался разобраться в чем проблема?
попробуй, может быть это что-то MinGW-specific? или в линукс тоже не работает?

зы
эти выходные я потрачу на переписывание скриптов MinGW-builds для добавления возможности собирать MinGW из windows/linux/osx.

зызы
следующие выходные планирую заняться онлайн инсталлятором.

PM WWW   Вверх
borisbn
Дата 16.9.2012, 10:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 4875
Регистрация: 6.2.2010
Где: Ростов-на-Дону

Репутация: 22
Всего: 135



> может быть это что-то MinGW-specific? или в линукс тоже не работает?
Дык у тебя же на LWS не работает. Там же линукс, насколько я понял


--------------------
Женщины отличаются от программистов тем, что у них чары состоят из стрингов
PM MAIL Jabber   Вверх
boostcoder
Дата 16.9.2012, 11:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



Цитата(borisbn @  16.9.2012,  10:57 Найти цитируемый пост)
у тебя же на LWS не работает.

правда? значит склероз smile 
PM WWW   Вверх
Randajad
Дата 16.9.2012, 11:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 295
Регистрация: 15.3.2012

Репутация: 8
Всего: 8



Насчет разобраться: похоже, написаны оберки, которые ничего не делают. :(
Интересует x86. 64 бита пока не нужно, толку от него нет, я не пишу узкоспециализированные приложения, потребляющие > 2 гб рамы. :3
PM MAIL   Вверх
boostcoder
Дата 16.9.2012, 11:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



Цитата(Randajad @  16.9.2012,  11:15 Найти цитируемый пост)
Интересует x86.

сегодня попробую собрать.
но SEH недоступен для i686 до тех пор, пока не истечет срок борландовского патента. и я хз когда он истечет, вроде ~2014. нагуглить не получилось.

PM WWW   Вверх
Randajad
Дата 16.9.2012, 11:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 295
Регистрация: 15.3.2012

Репутация: 8
Всего: 8



Это тот SEH, о котором я думаю?

http://ru.wikipedia.org/wiki/%D1%F2%F0%F3%...%F7%E5%ED%E8%E9

В студии он давным давно есть, например. Но комбинировать простые исключения с SEH в рамках одной функции, насколько помню, нельзя.
А вообще, я плохо представляю случаи, когда оно действительно нужно. У меня в приложении глобальная функция-обработчик таких исключений установлена через SetUnhandledExceptionFilter. И когда приложение решает поделить на ноль - оно отправляет отчет об ошибке, а я смотрю уже дизасм и исправляю. Таких случаев было за несколько лет всего 3. smile

Это сообщение отредактировал(а) Randajad - 16.9.2012, 11:39
PM MAIL   Вверх
boostcoder
Дата 16.9.2012, 11:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



Цитата(Randajad @  16.9.2012,  11:15 Найти цитируемый пост)
похоже, написаны оберки, которые ничего не делают.

хм.. а три месяца назад были добавлены новый тесты.
к тому же, если реализация не готова, к чему писать тесты да еще и добавлять?

спрошу в списке рассылки..

Добавлено через 2 минуты и 6 секунд
Цитата(Randajad @  16.9.2012,  11:38 Найти цитируемый пост)
Это тот SEH, о котором я думаю?

да, но за исключением новых ключевых слов _try/_except/_finaly

Добавлено через 3 минуты и 44 секунды
насколько я понял, единственное отличие SEH в gcc от SJLJ состоит в том, что SEH не создает оверхед..

PM WWW   Вверх
Randajad
Дата 16.9.2012, 11:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 295
Регистрация: 15.3.2012

Репутация: 8
Всего: 8



В mingw есть интересный хидер <excpt.h> с __try1, __except1, кстати.
PM MAIL   Вверх
boostcoder
Дата 16.9.2012, 12:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



ааа, макросы. (http://mingw-w64.svn.sourceforge.net/viewvc/mingw-w64/trunk/mingw-w64-headers/crt/excpt.h?view=log)

PM WWW   Вверх
boostcoder
Дата 16.9.2012, 12:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 49
Всего: 110



кто-то может подсказать как юзать __try1() ?

типа такого:
Код

EXCEPTION_DISPOSITION except_handler(struct _EXCEPTION_RECORD*, void*, struct _CONTEXT*, void*) {
}

int main() {
   __try1(except_handler) {
      *((int*)0) = 33;
   } __except1 {
   }
}


не понимаю, как тут юзается __except1...
если при возникновении исключения будет вызван except_handler(), то для чего тут макрос __except1 ?

PM WWW   Вверх
Страницы: (20) [Все] 1 2 3 ... Последняя »
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.9583 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.