Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум на CrossPlatform.RU _ Qt инструментарий _ проблема компиляции под Visual Studio 2008

Автор: &-rey 12.11.2009, 17:51

столкнулся с проблемой компиляции по Visual Studio 2008
после сборки и просмотра Plugins Information в QTDesigner имеем следущbt проблемы:

The plugin 'D:/qt_4/plugins/designer/containerextensiond.dll' uses incompatible Qt library. Expected build key "Windows msvc release full-config", got "Windows msvc debug full-config"
The plugin 'D:/qt_4/plugins/designer/taskmenuextensiond.dll' uses incompatible Qt library. Expected build key "Windows msvc release full-config", got "Windows msvc debug full-config"

Проблема выражается в добавлении Style Sheet, любые изменения кроме текста приводят к Invalid Style Sheet.

Прошу рассказать знающих людей как это побороть.

Автор: Litkevich Yuriy 12.11.2009, 18:13

Цитата(&-rey @ 12.11.2009, 20:51) *
Проблема выражается в добавлении Style Sheet, любые изменения кроме текста приводят к Invalid Style Sheet.
это к чему я не понял.
А запись
Цитата
uses incompatible Qt library. Expected build key "Windows msvc release full-config", got "Windows msvc debug full-config"

говорит сама за себя, плагины сцществуют только в отладочной версии (дизайнеру нужны релизные)

Автор: &-rey 12.11.2009, 18:52

Цитата(Litkevich Yuriy @ 12.11.2009, 19:13) *
Цитата(&-rey @ 12.11.2009, 20:51) *
Проблема выражается в добавлении Style Sheet, любые изменения кроме текста приводят к Invalid Style Sheet.
это к чему я не понял.


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

Автор: &-rey 16.11.2009, 10:21

в конфигурации:

configure -debug-and-release -shared -qmake -platform win32-msvc2008 -vcproj -qt-zlib -qt-gif -qt-libpng -qt-libjpeg -qt-sql-odbc -direct3d
nmake

из чего я предполагаю что -debug-and-release должен создать 2 версии
залез в папку
...Qt\4.5.3\examples\designer\containerextension\
и обнаружил там 2 Make файла, для debug и release, а так же 2 папки
...Qt\4.5.3\examples\designer\containerextension\tmp\obj\debug_shared\
...Qt\4.5.3\examples\designer\containerextension\tmp\obj\release_shared\
из чего можно сделать вывод что 2 версии скомпилировались
тоже самое соответсвует и для ...Qt\4.5.3\examples\designer\taskmenuextension\

проблема с дизайнером наблюдается на 2-х компах.

Автор: Litkevich Yuriy 16.11.2009, 16:36

Цитата(&-rey @ 16.11.2009, 13:21) *
из чего можно сделать вывод что 2 версии скомпилировались
такой вывод можно сделать только заглянув в ...Qt\4.5.3\plugins\designer\ и увидев там два типа файлов:
<filename>.dll
<filename>d.dll

Автор: &-rey 16.11.2009, 18:18

Цитата(Litkevich Yuriy @ 16.11.2009, 16:36) *
Цитата(&-rey @ 16.11.2009, 13:21) *
из чего можно сделать вывод что 2 версии скомпилировались
такой вывод можно сделать только заглянув в ...Qt\4.5.3\plugins\designer\ и увидев там два типа файлов:
<filename>.dll
<filename>d.dll

с выводами поспешил, но, тем не менее, данные файлики были обнаружены
...\plugins\designer\
containerextensiond.dll - 64 512
containerextension.dll - 30 720
taskmenuextension.dll - 33 280
taskmenuextensiond.dll - 71 680

Автор: Litkevich Yuriy 16.11.2009, 19:05

&-rey, теперь посмотри список плагинов в дизайнере, возможно понадобится очистить кэш плагинов. Дизайнер должен забраковать отладочные, но они несъедобны только ему, а твоя программа должна нормально работать при отладочной сборке.

Автор: &-rey 16.11.2009, 19:35

Цитата(Litkevich Yuriy @ 16.11.2009, 19:05) *
возможно понадобится очистить кэш плагинов.

HKEY_CURRENT_USER\Software\Trolltech\OrganizationDefaults\Qt Plugin Cache 4.5.debug
HKEY_CURRENT_USER\Software\Trolltech\OrganizationDefaults\Qt Plugin Cache 4.5.false
удалил, запустил designer, снова те же проблемы.
Нажимал refresh на форме просмотра информации плагинов (долго думает) но потом все так же.

Автор: Litkevich Yuriy 16.11.2009, 19:47

Цитата(&-rey @ 16.11.2009, 22:35) *
запустил designer, снова те же проблемы.
плагинов в самом Дезайнере не появилось, в панели виджетов?

Автор: &-rey 16.11.2009, 22:45

да вроде нет ...
Layouts
Spacers
Buttons
Item Views [Model-Based]
Item Widgets [Item-Based]
Containers
Input Widgets
Display Widgets
Arthur Widgets [Demo]
Display Widgets [Example]
Photon
QT 3 Support
Scratchpad

вот все панели

Автор: JuryS1806 16.11.2009, 23:02

А я вот под винду редко собираю программы, но когда это делал в последний раз то собирал с помощь MS Visual C++ 2005 (MSVCR90). Ведь насколько я понял Standart Edition распространяется бесплатно и при этом само по себе использования микрософтовского компилера в среде MS Windows это даже логично.

И посему вопрос: что это за костыли такие MINGW32 ??? Бесплатный сыромятный компилер, который типа распространяется бесплатно, но при этом нужно обязательно GPLv2, а если нет , то он стоит 5000 $ и более. И что говорят юристы по поводу этой редкостной ХРЕНИ. которая после статической сборки создает Exe-шник 10 Мб и более.

А допустим MSVCR90 можно культурно установить вместе с программой, скачав с microsoft.com инсталер, а в новых версиях винды он и так есть.

И еще насколько я помню, всегда существовали 2 версии MS Visual Studio - это версия 98 и все остальные. Так вот, в любов виндовз, даже 95, и в (wine :rolleyes: ) есть msvcr.dll или на худой конец msvcr.dll.so.

И зачем вся эта статическая сборка ? Или кашу маслом не испортишь ? Уже есть в винде или в вайне общая разделяемая библиотека , давай еще свою добавим в исполняемый файл и вообще, создать программу на 1,5 Гб, которая будет запускать виндоуз в виртуальной машине, распаковывая его из себя... и потом писать Hello, world !!! 8)

Автор: Litkevich Yuriy 16.11.2009, 23:55

Цитата(JuryS1806 @ 17.11.2009, 2:02) *
что это за костыли такие MINGW32 ??? Бесплатный сыромятный компилер,
никаких проблем с ним нет.

Цитата(JuryS1806 @ 17.11.2009, 2:02) *
но при этом нужно обязательно GPLv2, а если нет , то он стоит 5000 $ и более.
где ты нашёл такое требование? ссылку в студию.

Цитата(&-rey @ 17.11.2009, 1:45) *
Arthur Widgets [Demo]
Display Widgets [Example]
...
QT 3 Support
это уже плагины

Автор: &-rey 19.11.2009, 22:20

Цитата(Litkevich Yuriy @ 16.11.2009, 23:55) *
Цитата(&-rey @ 17.11.2009, 1:45) *
Arthur Widgets [Demo]
Display Widgets [Example]
...
QT 3 Support
это уже плагины


установил 4.5.0 комерческую, выяснил что проблемные плагины создают компоненты
WorldTimeClock
и TicTacToe
сами эти виджеты работают и в собранной версии, но оказались абсолютно бесполезными в применеии.
Cпасибо за наставления.

Форум Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)