Название: помощь по багтрекеру Qt Отправлено: EhTemka от Апрель 01, 2009, 21:33 Всем привет!
Есть такой таск http://www.qtsoftware.com/developer/task-tracker/index_html?method=entry&id=247708 (http://www.qtsoftware.com/developer/task-tracker/index_html?method=entry&id=247708) От себя добавлю что краш возникает только при РЕЛИЗНОЙ сборке под ВИНДОЙ на MSVC from Visial Studio 2005. (Я им тоже писал письмо, по этому поводу) Инженеры Qt говорят, что это баг компилятора и ничего исправлять они не собирются. Ситуация для меня весьма неприятная. Так как я не коммерческий клиент, то вижу урезанную информацию по таску (по крайней мере я так думаю). Только дескришен и история. Собственно я хотел попросить людей, у которых есть коммерческая лицензия, чтобы они посмотрели этот таск, и рассказали что там еще написано. Возможно там написано, что это за баг и т.д. Название: Re: помощь по багтрекеру Qt Отправлено: lit-uriy от Апрель 02, 2009, 07:39 я не думаю, что там ещё что-то написано.
Название: Re: помощь по багтрекеру Qt Отправлено: shadone от Апрель 02, 2009, 11:54 там больше ничего нет. есть пара ссылок на похожие проблемы из которых видно что скорее всего это проблема оптимизации в компиляторе (например добавление пары qDebug в QDataStream &QDataStream::operator<<(qint32 i) исправляет проблему).
Название: Re: помощь по багтрекеру Qt Отправлено: EhTemka от Апрель 02, 2009, 14:36 Ясно, спасибо. Но всё же хотелось бы узнать про этот баг побольше. Может есть патч какой-нибудь, и вообще знают ли о нем в микрософте...
To ddenis : Напиши эти ссылки тут, пожалуйста. Хотелось бы на них посмотреть Название: Re: помощь по багтрекеру Qt Отправлено: shadone от Апрель 02, 2009, 15:01 Ясно, спасибо. Но всё же хотелось бы узнать про этот баг побольше. Может есть патч какой-нибудь, и вообще знают ли о нем в микрософте... ссылок у меня нет. Могу только добавить что добавление отладочной печати в функцию QDataStream &QDataStream::operator<<(qint32 i) и пересборка Qt в режиме release исправляет проблему, что подтверждает проблему с компилятором.To ddenis : Напиши эти ссылки тут, пожалуйста. Хотелось бы на них посмотреть Код: QDataStream &QDataStream::operator<<(qint32 i) Знают ли в майкрософте не в курсе - если у вас проблема проявляется и есть лицензия на Visual Studio - напиши им. Название: Re: помощь по багтрекеру Qt Отправлено: pastor от Апрель 02, 2009, 15:15 А если попробывать не Visual Studio 2005, а Visual Studio 2008? Или установить сервис пак для Visual Studio 2005?
Название: Re: помощь по багтрекеру Qt Отправлено: EhTemka от Апрель 02, 2009, 17:16 To ddenis:
Спасибо, попробуем пока этот способ. Лицензии, каюсь, на Visual Studio нет. To pastor: 2008 студии пока нет, но попробую поискать более новый компилятор. Название: Re: помощь по багтрекеру Qt Отправлено: EhTemka от Апрель 04, 2009, 20:30 Кому интересно, переход на 2008-ю студию не помог.
Так что воспользовался советом ddenisа. Вроде не падает :) Название: Re: помощь по багтрекеру Qt Отправлено: pastor от Апрель 04, 2009, 20:44 EhTemka, мож выложить минимальный код для воспроизведения? (хочу у себя попробывать)
Название: Re: помощь по багтрекеру Qt Отправлено: crackedmind от Апрель 04, 2009, 20:46 Угу, мне тоже интересно. А то как раз сериализацию на основе QDataStream делаю. Не хотелось бы потратить время на нахождение такого бага :)
Название: Re: помощь по багтрекеру Qt Отправлено: EhTemka от Апрель 04, 2009, 20:52 На счет сереализации не знаю..
Но вот такой код с доквиджетами падает у меня при релизной сборке стабильно Код
Название: Re: помощь по багтрекеру Qt Отправлено: crackedmind от Апрель 04, 2009, 21:33 Ага, щас проверю. А Visual C++ 2008 c sp1?
Название: Re: помощь по багтрекеру Qt Отправлено: pastor от Апрель 04, 2009, 21:43 Проверил, краша нет:
MSVS2008 + SP1, Qt 4.1.5, Qt 4.2.3, Qt 4.3.5, Qt 4.4.3, Qt 4.5.0 Windows XP x64 Цитировать "C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\BIN\amd64\nmake.exe" Microsoft (R) Program Maintenance Utility Version 9.00.21022.08 Copyright (C) Microsoft Corporation. All rights reserved. Цитировать cl.exe Microsoft (R) C/C++ Optimizing Compiler Version 15.00.21022.08 for x64 Copyright (C) Microsoft Corporation. All rights reserved. Название: Re: помощь по багтрекеру Qt Отправлено: EhTemka от Апрель 06, 2009, 14:52 Код: C:\Program Files\Microsoft Visual Studio 9.0\VC\bin Код: Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 15.00.21022.08 for 80x86 Visual C++ 2008 без сервиспака. Добавлю, что куте скомпилино статически и система х32. Возможно 64-х битный компилятор и не страдает подобной ерундой. Если не трудно, можешь проверить скомпилить 32-х битным? Название: Re: помощь по багтрекеру Qt Отправлено: pastor от Апрель 06, 2009, 15:46 Если не трудно, можешь проверить скомпилить 32-х битным? К сожалению немогу, у меня все сборки Qt x64 Название: Re: помощь по багтрекеру Qt Отправлено: EhTemka от Апрель 06, 2009, 15:55 Ясно. Тогда я попробую установить SP1. Отпишусь о результатах.
Название: Re: помощь по багтрекеру Qt Отправлено: EhTemka от Апрель 06, 2009, 19:20 Вообщем установка сервис пака 1 на 2008 студию ни чего не дала. Как падало, так и падает.
Видимо в микрософте ни чего не знают о этом баге (либо делают вид, что никого бага нет). Итог: Qt4.5.0, MSVS 2008 SP1 (32-х битный компилятор), Windows XP SP2 x32. Конфигурация RELEASE. Краш при использовании того кода, что я привел выше. Еще раз спасибо за помощь ddenis-у и pastor-у. |